[英]circlize in R to make a circular plot
我正在尝试制作类似于基因表达图的圆形图。 我发现R中的circlize包可以做到这一点,而我试图遵循此http://cran.r-project.org/web/packages/circlize/vignettes/genomic_plot.pdf
我设法达到:6.创建绘图区域
但是当我打字
circos.genomicPoints(Region, value, numeric.column = c(1,2))
我收到此错误:
Error in get.cell.meta.data("sector.index") :
Length of `sector.index` should only be 1.
当我键入
circos.genomicLines(Region, value, numeric.column = c(1, 2))
我收到此错误:
Error in region[[1]] + region[[2]] :
non-numeric argument to binary operator
区域是具有205个观测值和7个变量的数据框:染色体,开始位置,结束位置,然后是一些值value是具有205个观测值和2个变量的数据框:两个数值
我对这种情节完全陌生,因此不胜感激
谢谢
region
在低级别的功能,例如circos.genomicPoints
或circos.genomicLines
应该是一个数据帧只包含两列(开始位置和结束位置)。 由于诸如circos.genomicPoints
功能circos.genomicPoints
只能作用于一个染色体,因此无需将染色体信息放入该region
。
推荐的方法来调用circos.genomicPoints
是投入panel.fun
致电时circos.genomicTrackPlotRegion
:
bed # your data frame which is bed-file format
circos.initializeWithIdeogram()
circos.genomicTrackPlotRegion(bed, panel.fun = function(region, value, ...) {
circos.genomicPoints(region, value, ...)
})
在上面的示例代码中, panel.fun
是一个自定义函数,将在每个染色体中执行。 panel.fun
中的region
和value
是从bed
中提取的“当前染色体”中的相应数据帧。
如果你想通过调用微调您的情节circos.genomicPoints
外circos.genomicTrackPlotRegion
,你需要建立你的region
和value
的变量,也不要忘记设置sector.index
或track.index
指定哪些染色体和轨道您要放置图形:
for(chr in chromosomes) {
region = bed[bed[[1]] == "chr", 2:3]
value = bed[bed[[1]] == "chr", some_column_index]
circos.genomicPoints(region, value, sector.index = chr, ...)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.