我有一个人口和该人口的样本。我使用 ggplot2 和它的 faceting 选项制作了一些比较它们的图,但我突然想到,将样本放在它自己的 facet 中会扭曲总体图(尽管轻微)。有没有办法对图进行分面,以便所有记录都在总体图中,而只有第二个图中的采样记录?
问问题
1426 次
1 回答
4
马特,
如果我正确理解了您的问题-您想要一个多面图,其中一个面板包含您的所有数据,而随后的方面仅包含第一个图的子集?
可能有一种更简洁的方法可以做到这一点,但是您可以使用data.frame
与每个子集对应的适当的分面变量创建一个新对象。考虑:
library(ggplot2)
df <- data.frame(x = rnorm(100), y = rnorm(100), sub = sample(letters[1:5], 100, TRUE))
df2 <- rbind(
cbind(df, faceter = "Whole Sample")
, cbind(df[df$sub == "a" ,], faceter = "Subset A")
#other subsets go here...
)
qplot(x,y, data = df2) + facet_wrap(~ faceter)
如果我误解了你的问题,请告诉我。
-追赶
于 2011-02-11T17:40:08.743 回答