[英]Adding labels to ends of bars in ggplot geom_bar
这是条形图:
ggplot(mtcars) +
geom_bar(aes(x = reorder(factor(cyl), mpg), y = mpg), stat="identity") +
coord_flip()
我想在最后添加标签,以显示每个栏中mpg的总值。 例如,从眼球来看,4cyl看起来大约为290。 我想在标签上添加一个显示确切数字的标签。
我想尝试一下,看看它们的外观,因此为了完整起见:
我找到了这篇 SO帖子,但一直在努力复制所选答案。 这是我的尝试:
ggplot(mtcars) +
geom_bar(aes(x = reorder(factor(cyl), mpg), y = mpg), stat="identity") +
coord_flip() +
geom_text(aes(label = mpg))
这给出了一个错误:
错误:geom_text需要以下缺失的美感:x,y
如何在条形图的末端添加标签?
这将通过生成新的data.frame进行标签打印来完成您需要的工作。 您可以通过调整nudge_y
和angle
来自定义文本的位置。
library(dplyr)
tmp <- mtcars %>% group_by(cyl) %>% summarise(tot_mpg = sum(mpg))
tmp$cyl <- factor(tmp$cyl)
ggplot(mtcars) +
geom_bar(aes(x = reorder(factor(cyl), mpg), y = mpg), stat="identity") +
coord_flip() + geom_text(data = tmp, nudge_y = 10, angle = 270,
aes(x = cyl, y = tot_mpg, label = tot_mpg))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.