anvi-display-structure [program]

Interactively visualize sequence variants on protein structures.

🔙 To the main page of anvi’o programs and artifacts.


Özcan C. Esen

Can consume

structure-db variability-profile-txt contigs-db profile-db splits-txt

Can provide



This program opens an interactive interface to explore single amino acid variants (SAAVs) and single codon variants (SCVs) in the context of predicted tertiary protein structures and binding sites. There are many example uses here and you can work through an example as part of the infant gut tutorial as well. This is an integral program of anvi’o structure, which you can learn more about here.

In short, this program enables users to explore sequence variation in the context of 3D protein structure, which reveals insight that cannot be learned from purely sequence-based approaches.

Before running

To run this program, you’ll need to have created a structure-db which can be easily done with a contigs-db and the program anvi-gen-structure-database.

You’ll also need a profile-db that was created using anvi-profile’s flag --profile-SCVs, which means that single codon variants (SCVs) have been profiled. Very sorry if this forces you to re-profile, but as of v6.2, this is now a very expedient process.

Basic Run

There are two ways to provide the variability information to this program.

The first is to provide a contigs-db and profile-db pair, and let this program calculate SAAVs and SCVs as they are requested by the interface.

anvi-display-structure -s structure-db \ -p profile-db \ -c contigs-db

The second is to use anvi-gen-variability-profile to create a variability-profile-txt. This way, you pre-load all of the variability data and don’t have to wait for anvi-display-structure to calculate variability on-the-fly. This option is probably most convenient in instances where you have already generated a variability-profile-txt for other reasons. If you fall into this camp, you can run anvi-display-structure as so:

anvi-display-structure -s structure-db \ -c contigs-db \ -v variability-profile-txt

You still must provide the contigs-db used to generate the variability-profile-txt, since it contains other necessary information such as functional annotations and ligand binding predictions. You may optionally provide a profile-db if custom sample grouping is important to you.

During anvi-gen-variability-profile, if you are only interested in genes that have predicted structures, you may want to run anvi-gen-variability-profile with the flag --only-if-structure.

You have several options to refine what proteins and variants you’re looking at:

  • Provide a list of gene caller IDs to only display specific genes (this can be provided either directly as a parameter or as a file with one gene caller ID per line)
  • Specify the minimum departure from the consensus sequence. This is a number from 0-1 that describes the threshold for a variability position to be displayed. For example, if this is set to 0.2, then all SAAVs and SCVs where less than 20 percent of the reads vary from the consensus sequence will not be displayed.
  • Specify samples of interest. Those in your profile-db or variability-profile-txt that are not in the samples of interest will be filtered out.

If you’re choosing to have anvi-display-structure calculate variability on-the-fly, you can speed things up by choosing to only calculate SAAVs or only calculate SCVs.

Other parameters

Power users can also change the server configuration (i.e. set the IP address, port number, browser path, server password, etc.)

Edit this file to update this information.

Additional Resources

Are you aware of resources that may help users better understand the utility of this program? Please feel free to edit this file on GitHub. If you are not sure how to do that, find the __resources__ tag in this file to see an example.