Getting started with HIPPO
To create a HIPPO database or interface with an existing one, create a HIPPO ‘animal’ object:
from hippo import HIPPO
animal = HIPPO(project_name, "path/to/db.sqlite")
Loading crystallographic hits from Fragalysis
1. Go Fragalysis and download a dataset. For public datasets you can use fragalysis.download_target()
Load the crystallographic data
animal.add_hits(
target_name='A71EV2A',
metadata_csv='/path/to/metadata.csv',
aligned_directory='/path/to/aligned_files',
)
Attention
N.B. all poses loaded into a HIPPO database only have an absolute path stored to the original file - they are not copied! It is your responsibility to ensure that their original files remain accessible.
Graphing
Several convenient graphing methods are available. Try:
animal.plot_tag_statistics()
animal.plot_pose_property('CanonSites')
Interaction fingerprinting
Interactions fingerprinted as follows:
import mrich
for pose in mrich.track(animal.poses):
pose.calculate_interactions()
N.B. mrich.track just gives you a nice progress bar
Interaction fingerprints can be visualised with a ‘punchcard’, per-residue histogram, or viewed individually for a Pose.
Interaction Punchcard
animal.plot_interaction_punchcard(poses=animal.poses(tag='hits'), subtitle='hits', group='pose_name')
See also plotting.plot_interaction_punchcard().
Interactions by residue
animal.plot_residue_interactions(poses=animal.poses(tag='hits'), residue_number=123, chain='A', subtitle='hits')
See also plotting.plot_residue_interactions().
Interactions of a single Pose
This will create an HTML file you can open in your browser:
import molparse as mp
pose = animal.poses[1]
fig = animal.plot_pose_interactions(pose=pose)
mp.write(f'{pose}_interactions.html', fig)
This method of writing to an HTML file works for all the above figures.
See also plotting.plot_pose_interactions().