组合格子图在x轴上产生空的间隙
问题描述:
我正在尝试使用两个图共享x轴的格来创建组合的柱和xyplot。组合格子图在x轴上产生空的间隙
require(lattice)
require(latticeExtra)
dd <- data.frame(Year = factor(1990:1999), Count = 0:9, Size = 9:0)
p1 <- barchart(Count ~ Year, data = dd, horizontal = FALSE)
p2 <- xyplot(Size ~ Year, data = dd)
c(p1,p2, x.same = TRUE, layout = c(1,2))
此图是不能令人满意,因为latticeExtra
结合曲线时增加了额外的空隙为1至10的x轴。这些差距不会出现在各个构成地块上。
如何从x轴中删除1和10?
正如我指出的,在这种特殊情况下,我可以通过删除x.same
参数来解决这个问题。然而,这不是一个通用的解决方案,只适用于我的例子不满意的情况。下面显示了一个改进的示例。
dd1 <- data.frame(Year = factor(1990:1999), Count = 0:9)
p1 <- barchart(Count ~ Year, data = dd1, horizontal = FALSE)
dd2 <- data.frame(Year = factor(1991:2000), Size = 0:9)
p2 <- xyplot(Size ~ Year, data = dd2, type = "o")
p2
卸下x.same
收率:
c(p1,p2, layout = c(1,2))
该曲线是不能令人满意的,因为它有两个x轴。
(我问了一个较早但不同的question试图解决这个问题)。
答
也许你需要从两个地块的相同因子水平开始。
# Using factors
dd1 <- data.frame(Year = factor(1990:2000), Count = c(0:9,NA))
p1 <- barchart(Count ~ Year, data = dd1, horizontal = FALSE)
dd2 <- data.frame(Year = factor(1990:2000), Size = c(NA,0:9))
p2 <- xyplot(Size ~ Year, data = dd2, type = "o")
p2
c(p1,p2, layout = c(1,2)) # works