【问题标题】:circlize in R to make a circular plot在 R 中盘旋以制作圆形图
【发布时间】:2014-09-02 07:47:55
【问题描述】:

我正在尝试制作一个类似于基因表达图的圆形图。 我发现 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

Region 是一个包含 205 个观测值和 7 个变量的数据框:染色体、起始位置、结束位置,然后是一些值 value 是一个包含 205 个观测值和 2 个变量的数据框:都是数值

我对这种情节完全陌生,因此感谢任何帮助

谢谢

【问题讨论】:

  • 您需要提供更多详细信息。到那时为止的一切都正确绘制了吗?您是否完全按照第 6 节中的说明构建了函数?
  • 是的,到那时为止的一切都正常工作并且绘制正确
  • 由于引用的小插图不提供 dataregion,(更不用说在我执行提供的代码时弹出多个警告和错误),小插图中可能存在错误和/ 或您构建自己的方式 region .

标签: r plot packages geometry circlize


【解决方案1】:

regioncircos.genomicPointscircos.genomicLines 等低级函数中应该是一个只包含两列(开始位置和结束位置)的数据框。因为circos.genomicPoints等函数一次只对一条染色体起作用,所以没有必要将染色体信息放在region中。

推荐的调用circos.genomicPoints的方法是在调用circos.genomicTrackPlotRegion时放入panel.fun

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 是一个自定义函数,将在每个染色体中执行。 regionpanel.fun 中的value 是从bed 中提取的“当前染色体”中的对应数据帧。

如果你想通过在circos.genomicTrackPlotRegion 之外调用circos.genomicPoints 来微调你的情节,你需要构造你的regionvalue 变量并且不要忘记设置sector.indextrack.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, ...)
}

【讨论】:

  • 顺便说一句,“genomic_plot.pdf”小插图中的一些示例代码仅用于演示,无法执行。这是因为绘制基因组级别的图总是需要更多的代码块,如果将所有代码都放在小插图中,它会看起来很糟糕。基因组 circos 函数的使用与一般 circos 函数的使用非常相似,它们背后的想法相同。用户最好先阅读 main vignette (circlize.pdf)。用户也可以去http://jokergoo.github.io/circlize/查看可执行示例。
猜你喜欢
  • 2021-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多