包括每个facet_wrap中所有数据的图

问题描述 投票:3回答:2

Dataframe(从here借来):

df.test <- data.frame(id = rep(1:6, each = 50), x = rnorm(50*6, mean = 10, sd = 5), 
                 y = rnorm(50*6, mean = 20, sd = 10), 
                 z = rnorm(50*6, mean = 30, sd = 15))

情节:

library(ggplot2)
ggplot(df.test, aes(x)) + geom_histogram() + facet_wrap(~id)

请求帮助:我想在每个方面上叠加整个数据的直方图,以便立即比较每个方面与总数据集,如果可能的话,我希望整个数据集显示为freq_poly():

ggplot(df.test, aes(x)) + geom_freqpoly()

enter image description here

r ggplot2 facet-wrap
2个回答
4
投票

您可以从调用geom_freqpoly中排除facetting变量

ggplot(df.test, aes(x)) + geom_histogram() + facet_wrap(~id) +
  geom_freqpoly(data = df.test[, "x", drop = FALSE], col = "red")

enter image description here


3
投票

以下只是从geom_freqpoly的数据中删除id列。

ggplot(df.test, aes(x)) + geom_histogram() + facet_wrap(~id) + 
  geom_freqpoly(data=df.test[-1])

这使它出现在所有方面:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.