This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How to create an anchor for OmicCircos

Could someone please explain how to create an anchor in the OmicCircos package from a data frame. My previous attempts have failed with the OmicCircos package uploading the hg18/hg19 genome rather than my gene set.

Thanks.

gene expression gene set enrichment analysis

1 answer

You maybe wanted one gene on one segment. Please try the code as the following.

The output file is at https://www.dropbox.com/s/pvudjol3s0wkde1/BioC_support01.pdf?dl=0

NOTE: Please use the updated version http://master.bioconductor.org/packages/3.1/bioc/html/OmicCircos.html

rm(list=ls());
library(OmicCircos);

gene.n  <- 200;
chr     <- paste0("Gene", 1:gene.n);
val     <- rnorm(gene.n);
seg.dat <- data.frame(chr=chr, start=rep(1, gene.n), end=rep(1,gene.n)+1, name=chr, value=val);
seg.c   <- segAnglePo(seg.dat, seg=chr);

cols    <- rainbow(10, alpha=0.8);

pdf("BioC_support01.pdf", 8,8);
par(mar=c(2, 2, 2, 2))
plot(c(1,800), c(1,800), type="n", axes=FALSE, xlab="", ylab="");

circos(R=350, type="chr", cir=seg.c, print.chr.lab=TRUE, W=8)
circos(R=270, cir=seg.c, W=80, mapping=seg.dat, type="s", col.v=5, col=cols, B=T, cex=abs(seg.dat[,5])*1.5);
circos(R=190, cir=seg.c, W=80, mapping=seg.dat, type="b", col.v=5, col=cols, B=F, lwd=abs(seg.dat[,5])*1.5);
circos(R=110, cir=seg.c, W=80, mapping=seg.dat, type="b2", col.v=5, col=cols[c(1,7)], cutoff=0, B=T, lwd=2);

dev.off();

This was very helpful! Thank you. Very simple and elegant. I was able to customize my circos plot easily!

In this example, line tracks (e.g. if tracks using type "l", "lh", "ls", etc, are included) do not seem to function properly regardless of the lwd utilized.

Log in to answer this question.