是ggplot2 facet_grid产生一个额外的类别?

时间:2014-03-12 19:58:52

标签: r plot ggplot2 facet

我尝试使用谷歌搜索和搜索论坛,看看是否有人有同样的问题,但我找不到像这样的问题的人。这可能是因为我忽略了一些完全显而易见的事情,但是在花了太多时间之后,我想我可能会问这里。

基本上,我有一个大表(Large_table),如下所示:

    nam startpos endpos  means File.Name
  12142 Chr 2        1  10000 0.1032  Strain_164
  12143 Chr 2    10001  20000 0.0097  Strain_164
  12144 Chr 2    20001  30000 0.0000  Strain_164
  12145 Chr 2    30001  40000 0.0000  Strain_164
  12146 Chr 2    40001  50000 0.0000  Strain_164
  12147 Chr 2    50001  60000 0.0000  Strain_164
  ...
  ...
  ...
  3240 Chr X 32390001 32400000 1.1921 Strain_98
  3241 Chr X 32400001 32410000 0.0827 Strain_98
  3242 Chr X 32410001 32420000 2.5432 Strain_98
  3243 Chr X 32420001 32430000 0.0404 Strain_98
  3244 Chr X 32430001 32440000 0.2218 Strain_98
  3245 Chr X 32440001 32450000 0.0645 Strain_98

我一直试图做的是使用ggplot和facet_wrap选项制作一组图。它的代码如下:

p <- ggplot(data = Large_table, aes(x=startpos, y=means)) 
       + geom_point(aes(colour=nam), size = 2) 
       + coord_cartesian(ylim = c(0, 30)) + xlab("Chromosome Position (Mb)") 
       + ylab("Average Coverage per 10kb")
p <- p + theme(legend.position="none") 
       + scale_x_continuous(labels=function(x)x/1000000) 
       + ggtitle(y) + facet_grid(File.Name ~ nam , margins = T, scales="free_x", drop=T)
p <- p + theme(panel.background = element_rect(fill="white"), panel.margin=unit(1,"lines"))

我最终得到的情节如下:

Example of plots produced by ggplot

我的问题是我不想要(全部)列和行。我只想绘制我的数据,而不是汇总的结果,我不知道为什么ggplot甚至会这样做。我查看了帮助文件,但也没有找到任何运气。我提前再次道歉,因为对我而言,这似乎是一个非常愚蠢的问题,但我无法弄清楚为什么会这样。

谢谢

1 个答案:

答案 0 :(得分:3)

如果您不想获得边距,请设置margins = F within facet_grid()

在你的情况下将是

facet_grid(File.Name ~ nam , margins = F, scales = "free_x", drop = T)

有关分面的更多信息:?facet_gridat docs.ggplot2R Cookbook