我一直在尝试使用facet_grid生成一系列点图。这样做,我注意到geom_dotplot似乎没有响应facet_grid的scales =“free_y”参数。ggplot2:与facet_grid一起使用geom_dotplot时没有自由轴缩放
下面是一些示例代码:
require(ggplot2)
#Example data
set.seed(3)
df = data.frame(Gene = rep(c("a", "b", "c", "d"), each=20),
ToD = rep(c("Morning", "Evening"), times = 40),
Expression = c(runif(20, min=0, max=10),
runif(20, min=0, max=1),
runif(20, min=0, max=1000),
runif(20, min=0, max=100)))
#Box plots of example data
ggplot(df, aes(x = ToD, y = Expression)) +
geom_boxplot() +
facet_grid(Gene ~ ., scales = "free_y")
#Dot plots of example data
ggplot(df, aes(x = ToD, y = Expression)) +
geom_dotplot(binaxis = "y", stackdir = "centerwhole") +
facet_grid(Gene ~ ., scales = "free_y")
这里是我目前使用的R和GGPLOT2的版本:
- [R版本3.2.2(2015年8月14日)
- ggplot2_1.0.1.9003
所以,当我产生箱线图,一切正常与y轴预期适当地缩放每个面行:
然而,点图维持方方面面行相同的Y轴标:
我读过有关已知的bug在ggplot2中,当指定自由标度时,coord_flip和facet_grid不能一起工作。这与这个问题有关吗?
虽然我可以分别生成每个图,然后将它们与grid.arrange结合起来,但这对我的目的来说很麻烦。我试图将这些点图与其他分面图重合,并且我想避免需要使用grid.arrange重新生成所有这些图。有什么想法吗?
感谢您提供的任何帮助,请让我知道,如果我可以提供任何进一步的澄清。
我无法复制错误与'ggplot2_1.0.1'和的r版本3.2.2 (2015-08-14)',对我来说工作正常 – mlegge
我刚刚更新到ggplot2_2.0.0,我仍然遇到同样的问题。我想我可能需要降级? –
我能够通过'ggplot2_2.0.0'和相同的R版本复制错误 – mlegge