《网易云课堂、腾讯课堂生物信息讲师——阿宁生信》

#导入内建人类染色体数据
data(UCSC.HG19.Human.CytoBandIdeogram);
head(UCSC.HG19.Human.CytoBandIdeogram);


 chr.exclude <- NULL;                            #设置不显示的染色体,如 c(1,3)          
 cyto.info <- UCSC.HG19.Human.CytoBandIdeogram;  #设置染色体数据
 tracks.inside <- 10;                                                         #设置内部track 个数
 tracks.outside <- 0;                                                         #设置外部track 个数
 
 #导入上面四个基本参数
 RCircos.Set.Core.Components(cyto.info, chr.exclude, tracks.inside, tracks.outside);

#列出 所有绘图参数
RCircos.List.Parameters() 


#Following are an example to change RCircos plot parameters:
#===========================================================

params <- RCircos.Get.Plot.Parameters();  #获得参数列表
params$radius.len <- 2.0;                                    #更改其中的参数            
params$base.per.unit <- 5000;                            #更改其中的参数            
RCircos.Reset.Plot.Parameters(params)     #参数重置
 
 
 
#定义要生成的图像文件,pdf,png,tiff 等 ,注意:最后要用dev.off()关闭
 out.file <- "D:/RCircosDemoHumanGenome.tiff";
 pdf(file=out.file, height=8, width=8, compress=TRUE);
 RCircos.Set.Plot.Area();


#Plot Chromosome Ideogram
RCircos.Chromosome.Ideogram.Plot();

#Gene Labels and connectors on RCircos Plot
#RCircos.Gene.Connector.Plot   绘制染色体表意文字和基因名称之间的连接
#RCircos.Gene.Name.Plot 在数据轨道上绘制基因名称

data(RCircos.Gene.Label.Data);
name.col <- 4;
side <- "in";
track.num <- 1;
RCircos.Gene.Connector.Plot(RCircos.Gene.Label.Data, track.num, side);
track.num <- 2;
RCircos.Gene.Name.Plot(RCircos.Gene.Label.Data, name.col,track.num, side);



#Heatmap, Histogram, Line, Scatter, and Tile Plot

#Heatmap--------------
#RCircos.Heatmap.Plot绘制一个数据轨道的热图

data(RCircos.Heatmap.Data);
 data.col <- 6;
 track.num <- 5;
 side <- "in";
 RCircos.Heatmap.Plot(RCircos.Heatmap.Data, data.col, track.num, side);
 
#Scatter-------------- 
#RCircos.Scatter.Plot  一个数据轨迹的扫描图

 data(RCircos.Scatter.Data);
 data.col <- 5;
 track.num <- 6;
 side <- "in";
 by.fold <- 1;
 RCircos.Scatter.Plot(RCircos.Scatter.Data, data.col,track.num, side, by.fold);
 
#Line----------------- 
#RCircos.Line.Plot绘制线为一个数据轨道

 data(RCircos.Line.Data);
 data.col <- 5;
 track.num <- 7;
 side <- "in";
 RCircos.Line.Plot(RCircos.Line.Data, data.col, track.num, side);
 
#Histogram------------ 
#RCircos.Histogram.Plot  绘制一个数据轨迹的直方图

 data(RCircos.Histogram.Data);
 data.col <- 4;
 track.num <- 8;
 side <- "in";
 RCircos.Histogram.Plot(RCircos.Histogram.Data, data.col, track.num, side);
 
# Tile-----------------
 data(RCircos.Tile.Data);
 track.num <- 9;
 side <- "in";
 RCircos.Tile.Plot(RCircos.Tile.Data, track.num, side);


#Links-----------------
#RCircos.Link.Plot绘制两个或多个基因组位置之间的链接线
data(RCircos.Link.Data);
track.num <- 11;
RCircos.Link.Plot(RCircos.Link.Data, track.num, TRUE);

data(RCircos.Ribbon.Data);

RCircos.Ribbon.Plot(ribbon.data=RCircos.Ribbon.Data, track.num=11, by.chromosome=FALSE, twist=FALSE);

RCircos绘制圈图(2)

相关文章: