R语言ggplot2包绘制高端堆积柱状图

数据和代码获取:请查看主页个人信息!!!

关键词“高端堆积柱状图”

大家好,今天我将介绍如何使用ggplot2包绘制高端堆积柱状图。

图片

本次绘图灵感来源于下面这篇文章,之所以复现这张图,有这么几个原因:

  • 配色,看着很舒服的配色方案

  • 细节:重点基因斜体加粗显示

  • 主题:theme_cowplot的运用

图片

图片

https://doi.org/10.1038/s41586-023-05729-x

Step1:数据载入

rm(list=ls())pacman::p_load(tidyverse, cowplot)# 载入数据load('df.luad.rda')load('df.lusc.rda')load('p.luad.rda')load('p.lusc.rda')

Step2:配色+可视化1

# 配色col.palette <- setNames(c("#a6dba0", "#c2a5cf", "#762a83"), c("depleted", "maintained", "enriched"))
# 绘图p1 <- ggplot(df.luad, aes(fct_rev(gene_name), n, fill = classification)) +   geom_bar(stat = "identity", position = position_fill()) +   xlab("") + ylab("Proportion") +  ggtitle("LUAD") +   coord_flip() +  scale_fill_manual(values = col.palette) +   theme_cowplot(font_size = 16) +   theme(axis.text.y =           element_text(face = ifelse(rev(levels(df.luad$gene_name)) %in% names(which(p.luad < 0.05)), "bold", "plain")))p1ggsave('pic1.png', p1, bg = 'white', width = 5, height = 6)

图片

上面的代码在结合element_text和ifelse,实现了重点基因的选择性加粗展示。

当然也可以加粗+斜体展示:

Step3:加粗+斜体

p1 +  theme(axis.text.y =           element_text(face = ifelse(rev(levels(df.luad$gene_name)) %in% names(which(p.luad < 0.05)), "bold.italic", "plain")))

图片

接下来对第二份数据继续进行可视化展示:

Step4:可视化2​​​​​​​

p2 <- ggplot(df.lusc, aes(fct_rev(gene_name), n, fill = classification)) +   geom_bar(stat = "identity", position = position_fill()) +   xlab("") + ylab("Proportion") +  ggtitle("LUSC") +  coord_flip() +  scale_fill_manual(values = col.palette) +   theme_cowplot(font_size = 16) +   theme(axis.text.y =           element_text(face = ifelse(rev(levels(df.lusc$gene_name)) %in% names(which(p.lusc < 0.05)), "bold", "plain")))p2ggsave('pic2.png', p2, bg = 'white', width = 5, height = 4)

图片

数据和代码获取:请查看主页个人信息!!!

关键词“高端堆积柱状图”

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值