Build Status Project Status: Active – The project has reached a stable, usable state and is being actively developed.

karyoploteR - An R/Biocondutor package to plot arbitrary data along the genome

karyoploteR Example


karyoploteR is an R package to plot data along the genome using a karyotype style plot.

It is entirely based on R base graphics and inspired by the R base graphics API. It includes functions to plot primitive graphic elements such as points, lines, rectangles, text, etc mapped into the genome plot coordinates and higher level functions to plot a heatmap, the regions in a GenomicRanges object or the cumulative coverage of such regions.

Data positioning and track configuration has been inspired by Circos and does not explicitly understands the concept of track. Thus, it is possible to freely specify where to plot the data and to create plots with multiple independent tracks or overlapping representations.

It is highly configurable and in addition to the parametrization of the different data plotting functions, it is possible to specify custom functions for every plotting action from the basic chromosome bands to the chromosome labels or base numbers as well as creating completely new plotting functions.

How to use it

Documentation (vignette and user manual) is available at the karyoploteR's Bioconductor landing page at

Tutorial and Examples

In addition to the documentation above, a short tutorial and some examples can be found at

Citing karyoploteR

karyoploteR has been developed by Bernat Gel and Eduard Serra at IGTP Hereditary Cancer Group.

If you use karyoploteR in your research, please cite the Bioinformatics paper describing it:

Bernat Gel & Eduard Serra. (2017). karyoploteR: an R/Bioconductor package to plot customizable genomes displaying arbitrary data. Bioinformatics, 31–33. doi:10.1093/bioinformatics/btx346

A few example plots created with karyoploteR

These images are all created with karyoploteR and are part of the documented examples in the karyoploteR's tutorial and examples page. Click on them to see how the code needed to create them.

A karyoploteR example plotting differential expression results computed with RNA-seq data from Drosophila Melanogaster A karyoploteR example plotting the density of genes instead of the ideograms A karyoploteR example plotting the nucleotide frequency, genes and CpG-islands on a small genomic region A karyoploteR example plotting raw SNP-array data A karyoploteR example plotting the genes from Plasmodium Vivax PvP01 genome version A karyoploteR example plotting genes positioned on the genome A karyoploteR example plotting a rainfall plot showing the distances between consecutive somatic variants A karyoploteR example plotting the density and positions of CpG islands along the genome

Try the karyoploteR package in your browser

Any scripts or data that you put into this service are public.

karyoploteR documentation built on Nov. 8, 2020, 5:52 p.m.