R语言ggplot柱状图:设置数据标签保留两位小数并添加千分位
要给ggplot2柱状图的标签设置两位小数+千分位分隔符,直接修改geom_text里的label参数即可,以下是两种简单实现方式:
方法1:用Base R原生函数format()
直接对average_likes做格式化处理,指定保留两位小数和千分位分隔符:
修改后的完整代码:
x <- ggplot(averagedf, aes(x=sentiment,y=average_likes)) + geom_bar(stat="identity", width=0.7, fill=c('chartreuse4', 'grey', 'firebrick3')) + geom_text(aes(label = format(average_likes, nsmall = 2, big.mark = ",")), vjust = 1.5, colour = "white") x
参数说明:
nsmall=2:强制保留两位小数,哪怕原数是整数也会显示成xxx.00big.mark=",":添加千分位分隔符
方法2:用scales包的便捷函数(推荐)
scales是ggplot生态常用工具包,格式化数值更灵活:
- 先安装并加载包:
install.packages("scales") library(scales)
- 修改
geom_text的label:
x <- ggplot(averagedf, aes(x=sentiment,y=average_likes)) + geom_bar(stat="identity", width=0.7, fill=c('chartreuse4', 'grey', 'firebrick3')) + geom_text(aes(label = label_number(accuracy = 0.01, big.mark = ",")(average_likes)), vjust = 1.5, colour = "white") x
参数说明:
accuracy=0.01:控制精度为两位小数big.mark=",":添加千分位分隔符
内容的提问来源于stack exchange,提问作者user1986315
相关产品推荐
相关产品推荐

