• Stars
    star
    897
  • Rank 46,329 (Top 1.0 %)
  • Language
    R
  • License
    Other
  • Created over 10 years ago
  • Updated 12 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Circular visualization in R

circlize: circular visualization in R

R-CMD-check CRAN CRAN Codecov test coverage

Circular layout is an efficient way for the visualization of huge amounts of information. Here the circlize package provides an implementation of circular layout generation in R as well as an enhancement of available software. The flexibility of this package is based on the usage of low-level graphics functions such that self-defined high-level graphics can be easily implemented by users for specific purposes. Together with the seamless connection between the powerful computational and visual environment in R, circlize gives users more convenience and freedom to design figures for better understanding complex patterns behind multi-dimensional data.

Citation

Zuguang Gu, et al., circlize Implements and enhances circular visualization in R. Bioinformatics (Oxford, England) 2014. PubMed

Documentation

The full documentations are available at https://jokergoo.github.io/circlize_book/book/ and the online website is at https://jokergoo.github.io/circlize/.

Blog posts

There are the following blog posts focusing on specific topics.

Examples

See https://jokergoo.github.io/circlize_examples/.

circlize_example

Install

The package can be installed from CRAN:

install.packages("circlize")

or directly from GitHub:

devtools::install_github("jokergoo/circlize")

Basic design

Since most of the figures are composed of points, lines and polygons, we just need to implement functions for drawing points, lines and polygons, then the plots will not be restricted in any specific types.

Current there are following low-level graphic functions:

  • circos.points()
  • circos.lines()
  • circos.segments()
  • circos.rect()
  • circos.polygon()
  • circos.text()
  • circos.axis()
  • circos.raster()
  • circos.arrow()
  • circos.raster()
  • circos.barplot()
  • circos.boxplot()
  • circos.link(), This maybe the unique feature for circos layout to represent relationships between elements.

For drawing points, lines and text through the whole track (among several sectors), the following functions are available:

  • circos.trackPoints()
  • circos.trackLines()
  • circos.trackText()

Draw circular heatmaps

  • circos.heatmap()

Functions to arrange the circular layout:

  • circos.track()
  • circos.update()
  • circos.nested()
  • circos.par()
  • circos.info()
  • circos.clear()

Theoretically, you are able to draw most kinds of circular plots by the above functions.

For specific use in Genomics, we also implement functions which add graphics in genome scale.

Functions to initialize circular plot with genomic coordinates:

  • circos.initializeWithIdeogram()
  • circos.genomicInitialize()

Functions to arrange genomic circular layout:

  • circos.genomicTrack()

Functions to add basic graphics in genomic scale:

  • circos.genomicPoints()
  • circos.genomicLines()
  • circos.genomicText()
  • circos.genomicRect()
  • circos.genomicLink()

Functions with specific purpose:

  • circos.genomicIdeogram()
  • circos.genomicHeatmap()
  • circos.genomicLabels()
  • circos.genomicDensity()
  • circos.genomicRainfall()

Finally, function that draws Chord diagram:

  • chordDiagram()

License

MIT @ Zuguang Gu

More Repositories

1

ComplexHeatmap

Make Complex Heatmaps
R
1,140
star
2

EnrichedHeatmap

make enriched heatmap which visualizes the enrichment of genomic signals to specific target regions.
R
170
star
3

spiralize

Visualize data on spirals
R
128
star
4

InteractiveComplexHeatmap

Make Interactive Complex Heatmaps
R
105
star
5

simplifyEnrichment

Simplify functional enrichment results
R
80
star
6

rGREAT

GREAT Analysis - Functional Enrichment on Genomic Regions
R
69
star
7

cola

A General Framework for Consensus Partitioning
R
50
star
8

HilbertCurve

Visualize genomic data by Hilbert curve
R
38
star
9

gtrellis

Genomic plot in trellis layout
R
36
star
10

pkgndep

Analyzing Dependency Heaviness of R Packages
R
35
star
11

KeywordsEnrichment

R
30
star
12

circlize_book

Documentation for circlize package
HTML
27
star
13

GetoptLong

Parse command-line arguments and simple variable interpolation
R
15
star
14

ComplexHeatmap-reference

Documentation of ComplexHeatmap package
HTML
15
star
15

bsub

Send R code/R scripts/shell commands to LSF cluster without leaving R
R
14
star
16

ComplexHeatmap_v2_paper_code

R
9
star
17

ngspipeline

NGS pipeline
Perl
9
star
18

GlobalOptions

Generate function to get or set global options
R
8
star
19

Crypt-DNASequence

Encrypt and decrypt strings to DNA Sequences
Perl
8
star
20

Useful_R_packages

8
star
21

GeneSummary

RefSeq Gene Summaries
R
6
star
22

jokergoo

5
star
23

cola_hcp

Hierarchical Consensus Partitioning
5
star
24

circlize_examples

circlize examples
HTML
5
star
25

spiralize_vignettes

Vignettes of the spiralize package
HTML
4
star
26

ComplexHeatmap-examples

R
4
star
27

pheatmap2

pretty and parallel heatmap
R
4
star
28

BioMartGOGeneSets

Gene Ontology Gene Sets from BioMart
R
3
star
29

cotools

NGS tools for Conputational Oncology group in DKFZ
R
2
star
30

cola_manuscript

Scripts for the cola manuscript
R
2
star
31

jokergoo.github.io

Personal website
HTML
2
star
32

simplifyEnrichment_supplementary

Supplementary for simplifyEnrichment manuscript
HTML
2
star
33

gsubeval

Substitute with an Evaluated Expression
R
2
star
34

cola_examples

Examples of cola analysis
HTML
2
star
35

supplementary

HTML
2
star
36

CePa

Centrality-based pathway enrichment
R
2
star
37

List-Vectorize

vectorized functions in perl
Perl
1
star
38

cola_vignettes

Vignettes of the cola package
HTML
1
star
39

UniProtKeywords

Keywords from the UniProt database
R
1
star
40

GTF

Simple class to process GTF data
R
1
star
41

Microarray-GEO-SOFT

Reading microarray data in SOFT format from GEO database
Perl
1
star
42

Statistics-Multtest

Control false discovery rate in multiple test
Perl
1
star