首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >ggplot2优雅绘制多元素注释条形图

ggplot2优雅绘制多元素注释条形图

作者头像
R语言数据分析指南
发布2024-03-20 21:22:20
发布2024-03-20 21:22:20
3560
举报

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

原图

仿图

关于永久群内容的说明

❝给予长期支持我们的读者们一个特别待遇:购买小编VIP会员文档的读者,「将自动获得2024年及以后更新的绘图文档代码,无需额外付费」。目前会员文档(2023+2024)「已经更新上传了150+案例文档」,每个案例都附有相应的数据和代码,并配有对应的注释文档,方便大家学习和参考。 ❞

加载R包

代码语言:javascript
复制
library(tidyverse)
library(magrittr)
library(ggtext)
library(grid)
library(cowplot)

定义颜色

代码语言:javascript
复制
col <- c("#ABDDDE","#FAD510","#C6CDF7","#F4B5BD","#0A9F9D","#FAEED1","#005295","#E6A0C4","#C52E19",
  "#9C9D9D")

数据清洗

代码语言:javascript
复制
df <- read_tsv("data.txt") %>% 
  pivot_longer(-c("pathway","group")) %>% 
  set_colnames(c("pathway","group","Species<br>(contribution percentage>10%)","value")) %>% 
  mutate(value=case_when(group =="Enriched in stable low DDS" ~ -value,
                         TRUE ~ value))

定义因子

代码语言:javascript
复制
df$pathway <- factor(df$pathway,levels = df$pathway %>% unique() %>% rev())

数据可视化

代码语言:javascript
复制
plot <- df %>% dplyr::rename("Percentage of species contributing<br>to each pathway,%"="value") %>% 
  ggplot(aes(`Percentage of species contributing<br>to each pathway,%`,
             pathway,
             fill=`Species<br>(contribution percentage>10%)`))+
  geom_col(color="black",size=0.5)+
  scale_fill_manual(values = c("#ABDDDE","#FAD510","#C6CDF7","#F4B5BD","#0A9F9D","#FAEED1","#005295","#E6A0C4","#C52E19",
                               "#9C9D9D"))+
  coord_cartesian(clip = "off")+
  theme_bw()+
  theme(legend.title = element_markdown(color="black",face="bold"),
        legend.text = element_text(color="black",face= "bold.italic"),
        axis.ticks = element_blank(),
        axis.text=element_text(color="black",face="bold"),
        axis.title.x = element_markdown(color="black",face="bold"),
        axis.title.y = element_blank(),
        plot.margin=unit(c(2,0.3,0.3,0.3),unit="cm"))
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-03-16,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 欢迎关注R语言数据分析指南
  • 原图
  • 仿图
  • 关于永久群内容的说明
  • 加载R包
  • 定义颜色
  • 数据清洗
  • 定义因子
  • 数据可视化
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档