R语言作图挑战:你会采用什么方式来复现这种文本在柱子上方的柱形图?

看见R语言数据可视化大佬的twitter

图片
image.png
图片
image.png

挑战:你会采用什么方式来复现这种文本在柱子上方的柱形图

今天的推文我给出自己的方案,欢迎大家留言讨论给出自己的方案

我的思路是在输入数据上做准备,我把数据整理成如下格式

这里是5个柱子,我准备10个柱子的数据,其中5个柱子的值设置为0

我整理的数据格式如下

图片
image.png

作图代码

library(readxl)
library(ggplot2)
library(ggh4x)

dat<-read_excel("data/20231027/20231027.xlsx")
dat

ggplot(data = dat,aes(x=x,y=y))+
  geom_col(aes(fill=group),show.legend = FALSE)+
  geom_text(aes(x=0,y=y,label=label),
            hjust=0,vjust=1,size=10)+
  geom_text(aes(x=x,y=y,label=scales::percent(label1,accuracy = 0.1)),
            hjust=c(rep(1,9),0),
            size=5,
            color=c(rep("white",9),"black"),
            fontface="bold")+
  theme_bw(base_size = 20)+
  theme(panel.grid = element_blank(),
        panel.border = element_blank(),
        axis.text.y = element_blank(),
        axis.ticks.y = element_blank(),
        axis.line.x = element_line())+
  labs(x="Proportion",y=NULL)+
  guides(x=guide_axis_truncated(trunc_lower = 0,
                                trunc_upper = 40))+
  scale_x_continuous(labels = function(x){paste0(x,"%")})+
  scale_fill_manual(values = c("A"="#1d7859","B"="#7f7f7f","D"="white"))
图片
image.png

欢迎大家积极留言给出自己的画图思路

今天推文的示例数据和代码可以给推文打赏1元获取

欢迎大家关注我的公众号

小明的数据分析笔记本

声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/359921.html

(0)
联系我们
联系我们
分享本页
返回顶部