我知道有很多问题,但我找到的似乎并没有为我做的工作。 我在X轴上有一个分类变量,在Y轴上有连续。
我试图在图例(或图的上角)中添加geom_point中使用的点总数,并在其轴标签下添加每个类别的点数。 这是我的ggplot代码,带有示例数据:
ds <- data.frame(groupage = sample(c(1,2,3),2000, replace=TRUE), moneyearned = sample(20,replace = TRUE))
p<- ggplot(ds, aes(x=groupage, y=moneyearned)) +geom_point() + stat_sum() + scale_x_discrete(breaks=1:3,labels=c("67-72 yo", "73-77 yo", "78-84 yo"))
p
例如,在2000年的观察中,如果类别1中有573个,类别2中有784个,类别3中有636个,缺失值为7个,我希望在图例中显示“n = 2000-missings”(或图的上角),“n = 573”,“n = 784”,“n = 636”,在X轴上显示各自的类别标签。
对于我找不到的某些帖子的任何帮助或参考将不胜感激:)
答案 0 :(得分:2)
您可以使用<script type = 'text/javascript'>
var data = {{json|safe}}
data[0]["fields"].ATTRIBUTE
</script>
计算每个类别的数据点。然后,您可以将这些数字添加到x轴标签的矢量中:
table()
然后在tab <- table(ds$groupage)
x_labs <- paste0(c("67-72 yo", "73-77 yo", "78-84 yo"), " (n=", tab, ")")
中使用 x_labs
。图例实际上是尺寸美学,因此您可以使用scale_x_discrete()
来设置标题:
labs(size = "title")