前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ggbrick绘制砖块风柱状图

ggbrick绘制砖块风柱状图

作者头像
R语言数据分析指南
发布2023-08-18 13:47:54
2491
发布2023-08-18 13:47:54
举报

欢迎关注R语言数据分析指南

❝之前介绍过「ggbrick」绘制砖块华夫图的案例,小编突然想到由于砖块可对应数值因此用其来展示柱状图非常很形象生动,下面小编就通过一个案例来进行展示数据为随意构建无实际意义仅作图形展示用,希望各位观众老爷能够喜欢 ❞

加载R包

代码语言:javascript
复制
devtools::install_github("doehm/ggbrick")
library(tidyverse)
library(ggbrick)

导入数据

代码语言:javascript
复制
data <- read_tsv("data.xls")

数据清洗

代码语言:javascript
复制
df <- data %>% arrange(desc(n)) %>%   # 按照变量"n"的降序排列数据
  mutate(state = fct_reorder(state, n, max)) %>%   # 使用变量"n"对"state"进行重新排序
  slice_head(n = 10) %>%   # 取前10行数据
  mutate(n_lab = paste0(round(n/1000, 1), "k"))   # 在"data"中添加新的变量"n_lab",其值为将"n"除以1000并四舍五入到小数点后一位,并在后面添加"k"

数据可视化

代码语言:javascript
复制
df %>%
  ggplot(aes(state,state_lab)) +   # 设置x轴和y轴的变量为"state"和"state_lab"
  geom_brick(aes(state, n, fill = n), colour = NA, size = 0.2) +   # 使用砖形图表示数据,x轴为"state",y轴为"n",填充颜色为"n",边框颜色设置为透明,大小为0.2
  geom_text(aes(state, y = n+280, label = n_lab),colour = "black",
            lineheight = 0.5, size =3.5) +   # 在图表上显示文本,x轴为"state",y轴为"n+280",标签为"n_lab",文本颜色为黑色,行高为0.5,字体大小为3.5
  scale_fill_gradientn(colours = rev(RColorBrewer::brewer.pal(6, "RdBu"))) +   # 设置填充颜色为逆转的RdBu调色板中的6种颜色
  labs(x=NULL,y=NULL,fill = "Number of\nHistorical\nMarkers") +   # 设置x轴和y轴的标签为空,设置填充颜色的标签为"Number of\nHistorical\nMarkers"
  scale_y_continuous(expand = c(0,100)) +   # 设置y轴的范围扩展为0到100
  scale_x_discrete(labels = function(y) str_wrap(y, width=6)) +   # 设置x轴的离散变量标签格式,使其每行最多显示6个字符
  theme_classic() +   # 使用经典主题
  theme(
    axis.line.y.left = element_blank(),   # 隐藏左侧y轴的轴线
    axis.text.y = element_blank(),   # 隐藏y轴的刻度标签
    axis.ticks.y = element_blank(),   # 隐藏y轴的刻度线
    axis.text.x = element_text(color="black", size=8, face="bold"),   # 设置x轴刻度标签的颜色为黑色,大小为8,加粗
    plot.background = element_rect(fill ="white", colour ="white"),   # 设置图表背景为白色
    plot.margin = margin(b = 2, t = 5, r = 5, l = 5),   # 设置图表的边距
    legend.title = element_text(size = 10)   # 设置图例标题的大小为10
  )
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 R语言数据分析指南 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 欢迎关注R语言数据分析指南
  • 加载R包
  • 导入数据
  • 数据清洗
  • 数据可视化
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档