用文件大小 geom_rect 绘制方面的变化

时间:2021-02-07 22:18:38

标签: r ggplot2

我试图绘制这个

ggplot() +
      geom_rect(data = don7, aes(xmin = startPos , xmax = finalPos , ymin = 0, ymax = 1, fill=sv)) +
      geom_rect(data = don10, aes(xmin = startPos, xmax = finalPos , ymin = 1, ymax = 2, fill=sv)) +
      scale_fill_manual(values=c("red", "green", "blue", "black"))+
      theme_bw() +
      theme( 
        panel.grid.major.x = element_blank(),
        panel.grid.major.y = element_blank(),
        panel.grid.minor.x = element_blank(),
        panel.grid.minor.y = element_blank(),
        axis.title.x=element_text(size=20),
      )

哪里

> head(don7)
       chrteq  start    end  sv chr tot startPos finalPos
1 NC_045001.1  76169  76207 INS   3   0    76169    76207
2 NC_045001.1 211586 211615 INS   3   0   211586   211615
3 NC_045001.1 253399 253424 INS   3   0   253399   253424
4 NC_045001.1 260178 260299 DUP   3   0   260178   260299
5 NC_045001.1 323052 323156 DEL   3   0   323052   323156
6 NC_045001.1 348140 348180 DEL   3   0   348140   348180

> head(don10)
       chrteq  start    end  sv chr tot startPos finalPos
1 NC_045001.1  30695  30731 INS   3   0    30695    30731
2 NC_045001.1  91074  91155 INS   3   0    91074    91155
3 NC_045001.1 123627 123658 INS   3   0   123627   123658
4 NC_045001.1 158838 158923 DEL   3   0   158838   158923
5 NC_045001.1 177204 177231 DEL   3   0   177204   177231
6 NC_045001.1 212236 212878 DEL   3   0   212236   212878

但是有些矩形没有显示,因为我保存的图有多大,不同的矩形显示/消失

enter image description here

enter image description here

这是为什么?

谢谢

编辑:使用针对性策略 enter image description here

我注意到 bc 我的 DEL 比 INV 多得多,例如,在这种情况下,情节看起来会很红。我想知道如何仅 grep INS 并从 0-1、DUP 1-2 等进行绘图。

1 个答案:

答案 0 :(得分:1)

正如评论所暗示的,如果您将其绘制到基于矢量的引擎(例如,pdf)中,您可以看到所有行:

pdf("~/Downloads/5719890_66093693.pdf", height = 2)
# your plot code
dev.off()

all the lines are seen

根据@teunbrand 的建议,添加 colour=sv 可以提供更多突破:

ggplot() +
      geom_rect(data = don7, aes(xmin = startPos , xmax = finalPos , ymin = 0, ymax = 1, fill = sv, colour = sv)) +
      geom_rect(data = don10, aes(xmin = startPos, xmax = finalPos , ymin = 1, ymax = 2, fill = sv, colour = sv)) +
      scale_fill_manual(values=c("red", "green", "blue", "black"))+
      theme_bw() +
      theme( 
        panel.grid.major.x = element_blank(),
        panel.grid.major.y = element_blank(),
        panel.grid.minor.x = element_blank(),
        panel.grid.minor.y = element_blank(),
        axis.title.x=element_text(size=20),
      )

raster plot showing all lines