Send to

Choose Destination
Bioinformatics. 2018 Dec 3. doi: 10.1093/bioinformatics/bty994. [Epub ahead of print]

iHam & pyHam: visualizing and processing hierarchical orthologous groups.

Author information

SIB Swiss Institute of Bioinformatics, Lausanne, Switzerland.
ETH Zurich, Computer Science, Zurich, Switzerland.
Center for Integrative Genomics, University of Lausanne, Lausanne, Switzerland.
Open Targets, Wellcome Genome Campus, Hinxton, Cambridge, UK.
EMBL-European Bioinformatics Institute, Wellcome Genome Campus, Hinxton, Cambridge, UK.
Dept. of Computational Biology, University of Lausanne, Lausanne, Switzerland.
Dept. of Genetics, Evolution & Environment, University College London, London WC1E.
Dept. of Computer Science, University College London, London, UK.



The evolutionary history of gene families can be complex due to duplications and losses. This complexity is compounded by the large number of genomes simultaneously considered in contemporary comparative genomic analyses. As provided by several orthology databases, hierarchical orthologous groups (HOGs) are sets of genes that are inferred to have descended from a common ancestral gene within a species clade. This implies that the set of HOGs defined for a particular clade correspond to the ancestral genes found in its last common ancestor. Furthermore, by keeping track of HOG composition along the species tree, it is possible to infer the emergence, duplications and losses of genes within a gene family of interest. However, the lack of tools to manipulate and analyse HOGs has made it difficult to extract, display, and interpret this type of information. To address this, we introduce iHam, an interactive JavaScript widget to visualise and explore gene family history encoded in HOGs, and pyHam, a python library for programmatic processing of genes families. These complementary open source tools greatly ease adoption of HOGs as a scalable and interpretable concept to relate genes across multiple species.

Availability and implementation:

iHam's code is available at or can be loaded dynamically. pyHam's code is available at and or via the pip package "pyham".

Supplemental Content

Full text links

Icon for Silverchair Information Systems
Loading ...
Support Center