【问题标题】:ggplot facet grid/wrap high resolutionggplot facet grid/wrap 高分辨率
【发布时间】:2016-07-25 06:07:44
【问题描述】:

我正在尝试使用 ggplot 中的分面网格将样本和染色体绘制为行和列。我的问题是每个方面都非常小,因为我有 25 条染色体和许多样本。有没有办法用实际大小绘制每个方面,并在样本和染色体上水平和垂直滚动?这是我的代码

seg <- read.table("tmp.seg")
head(seg)
    id  chr   start      end test  ref       log2
2 114F chrY 9992443 10038173 2654 3818 -0.03
3 114F chrY 9969577 10015307  460 1286 -0.99
4 114F chrY 9946711  9992441  497 1348 -0.94
5 114F chrY 9923845  9969575  537 1254 -0.73
6 114F chrY 9900979  9946709 1040 2667 -0.86
7 114F chrY 9878113  9923843  700 2021 -1.03

p <- ggplot(seg) + geom_segment(aes(x=seg$start,y=seg$log2,xend=seg$end,yend=seg$log2,color=seg$log2),size=1) +
    facet_grid(id~chr,scales="free_x") + 
      scale_color_gradient(limits=c(-1,1),low="blue", high="red") +
        theme(panel.background=element_rect(fill="white")) + ylim(c(-2,2))

结果是这样的

如您所见,刻面缩小了情节,其中所有细节都消失了。我想知道如何制作一个高分辨率图,其中可以水平和垂直滚动以详细查看每个样本的每个染色体。

提前致谢

【问题讨论】:

  • 将其保存到文件中,您可以指定所需的任何尺寸。 ggsave("my_plot.pdf", plot = p, height = 18, width = 42, units = "in") 应该足够大。
  • @Gregor 感谢您的建议,但问题不在于主图的大小,而在于每个方面的大小。刻面缩小了每个染色体内的数据,所以我在想一种方法使每个刻面的分辨率和大小足够大,以便可以滚动浏览每个染色体中的所有点。再次感谢
  • 我不确定我是否理解...如果主要情节更大,那么方面会不会也更大?不把主线做大就不能把面做大吗?

标签: r ggplot2 facet-wrap facet-grid


【解决方案1】:

使用带有一定数量的列或行的 facet_wrap 包装。例如, facet_grid(id~chr,ncol=4) 会将您的图表分解为更清晰的表示,但不幸的是不会使图表能够滚动。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-04
    • 1970-01-01
    • 2021-02-22
    • 2018-09-24
    • 2020-06-09
    • 1970-01-01
    相关资源
    最近更新 更多