gpt4 book ai didi

r - 向 GGPLOT2 直方图添加点

转载 作者:行者123 更新时间:2023-12-02 00:08:27 24 4
gpt4 key购买 nike

我正在尝试生成一个直方图,该直方图在所有观测值的直方图上说明观测点(子集)。为了让它有意义,我需要为每个点涂上不同的颜色,并在图上放置一个图例。我的问题是,我似乎无法在情节中显示比例。下面是我尝试过的示例。

subset <-1:8
results = data.frame(x_data = rnorm(5000),TestID=1:5000)
m <- ggplot(results,aes(x=x_data))
m+stat_bin(aes(y=..density..))+
stat_density(colour="blue", fill=NA)+
geom_point(data = results[results$TestID %in% subset,],
aes(x = x_data, y = 0),
colour = as.factor(results$TestID[results$TestID %in% subset]),
size = 5)+
scale_colour_brewer(type="seq", palette=3)

理想情况下,我希望这些点位于密度线上(但我真的不确定如何做到这一点,所以我决定将它们定位在 y = 0 处)。最急需的是一个图例,表示子集中每个点对应的TestID。

非常感谢任何可以提供帮助的人。

最佳答案

这解决了你的第二点 - 如果你想要一个图例,你需要将该变量作为一种美学包括在内并将其映射到一个变量(在本例中为颜色)。因此,您真正需要做的就是将 colour = as.factor(results$TestID[results$TestID %in% subset]) 移动到 aes() 的调用中,例如所以:

ggplot(results,aes(x=x_data)) + 
stat_bin(aes(y=..density..))+
stat_density(colour="blue", fill=NA)+
geom_point(data = results[results$TestID %in% subset,],
aes(x = x_data,
y = 0,
colour = as.factor(results$TestID[results$TestID %in% subset])
),
size = 5) +
scale_colour_brewer("Fancy title", type="seq", palette=3)

关于r - 向 GGPLOT2 直方图添加点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16920134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com