[英]Density plot and histogram in ggplot2
您需要讓geom_histogram
和geom_density
共享同一軸。 在這種情況下,我通過將aes(y=..density)
項添加到 geom_histogram 來針對密度指定geom_histogram
。 還要注意一些不同的美學以避免過度繪制,以便我們能夠更清楚地看到兩個幾何:
ggplot(x, aes(n, fill=nombre))+
geom_histogram(aes(y=..density..), color='gray50',
alpha=0.2, binwidth=0.25, position = "identity")+
geom_density(alpha=0.2)
正如最初指定的那樣,美學fill=
適用於兩者,因此您有直方圖和密度幾何顯示您根據“x1”和“x2”分組的分布。 如果您想要 x1 和 x2 的組合集的密度幾何,只需為直方圖幾何指定fill=
美學:
ggplot(x, aes(n))+
geom_histogram(aes(y=..density.., fill=nombre),
color='gray50', alpha=0.2,
binwidth=0.25, position = "identity")+
geom_density(alpha=0.2)
我想出了一個想法,允許您根據直方圖縮放密度 plot。
您可以使用stat:density
function 獲取密度數據並手動縮放它們,然后使用geom_line
plot 它們:
ggplot(x, aes(n, fill=nombre))+
geom_histogram(alpha=0.5, binwidth=0.25, position = "identity") +
geom_line(aes(x,y, group=nombre),
~ .x %>% group_by(nombre) %>%
mutate(n_cut = cut(n, seq(min(n), max(n), 0.25))) %>%
summarize(
y = density(n)$y * max(table(n_cut)) / max(density(n)$y),
x = density(n)$x
)
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.