r - 向ggplot条形图中的每个条形添加计数
问题描述
我有一个大数据集,可以使用下面的 mwe 来举例说明
df <- data.frame("x" = c(1,1,1,2),"value" = c(4,3,5,1), "groupA" = c("A","B","A","B"), "groupB" = c("X","Y","Y","Y"))
df$value <- ifelse(df$groupB == "Y", -df$value, df$value)
我需要绘制这个,其中一组产生填充,另一组产生填充,无论它是在 x 轴上方还是下方。这可以按如下方式完成:
ggplot(df,aes(x=x,y=value,fill=groupA))+
geom_bar(stat="identity")+
这会产生高于和低于零的每个 groupB 中的值的总和,并且很好地对条形进行颜色编码:
mwe 条形图
但是,我还需要将每个实例中的计数打印为每个条形上方的标签。像这样使用Aniko 的建议:
ggplot(df,aes(x=x,y=value,fill=groupA))+
geom_bar(stat="identity")+
geom_text(aes(label=..count..,group=x,y=..count..), vjust=0,stat="count")
产生这个:
条形图 w。标签
如您所见,标签的位置由计数定义。我曾尝试设置y=value
, or y=5
(例如),但这会导致错误消息。
我该如何解决这个问题?
(zx8754回复后编辑)
解决方案
推荐阅读
- python - 将 imagefont 设置为数学不起作用(枕头)
- javascript - Print.JS - 设置默认打印设置
- javascript - 强密码验证不检测正斜杠
- apache - 如何将 HTTPS 两个 URL 重定向到 Apache 虚拟主机中的端口和文件夹
- npm - 我可以编写一个 npm 运行脚本来自动将 ftp 加载到我的服务器吗?
- c++ - 检查重复的用户 ID
- python - DJANGO 布尔字段表单未保存
- python - 代码没有问题,但它也不起作用
- java - 调用一个带有 @valid 注释并且有一个 Errors 参数的方法
- javascript - 从不同的目录访问 JS 文件