引言
我们前面分享了NM的文章和代码(组学绘图代码分享,作者提供全部图的绘制代码,你还不动手收藏呢?),类似的文章和分享很多,也许你平时已经收藏了很多很多这样的教程。但是,可能 你收藏后就“吃灰”了,基本没有太多时间去了解和学习。
每个人精力和时间是有限的,我们当下也许只能做好1-2件事情。因此,我们会花费很少的时间,做每期教程的分享,希望可能帮助你。
原文图形
你直接使用自己数据和代码绘制出的图形
为什么我们不直接使用facet_wrap()
进行绘图
我们看此热图,可以直接知道是如何绘制的,可以直接使用你ggplot2
进行绘制。此外,此图热也是一个分面热图,我们在ggplot()
函数中直接使用facet_wrap()
也可以实现。但是,使用facet_wrap()
时,X轴坐标的数据信息回全部显示,而有些数据可能是存在空值等(详情可以看教程最后的说明)。
SO,绘图的第一步就是筛选出图形的数据,然后进行绘制图形。
数据信息
Code
- 加载R包
library(tidyverse)
library(scales)
library(RColorBrewer)
- 加载数据
dat <- read.csv("data_input.csv",header = T)
head(dat)
list <- unique(dat$Metabolism)
list <- as.data.frame(list)
list$color <- brewer.pal(length(unique(list$list)), "Dark2")
##'@创建一个空的储存
plot_list <- list()
d <- list$list[6]
- 绘图
for (d in list$list) {
#d = "CO-Oxidation"
dat_lol <- dat %>%
filter(Metabolism == !!d)
## 设置颜色
list_temp <- list %>%
filter(list == !!d)
(
p1 <-
ggplot(dat_lol , aes(Gene_name, Class)) +
geom_tile(aes(fill = mean_tax), colour = "black") +
scale_fill_gradient(
low = "white",
high = list_temp$color,
limits = c(0, 100)
) +
#scale_x_discrete(guide = guide_axis(n.dodge = 2))+
theme_minimal() +
coord_fixed(ratio = 1) +
labs(x = NULL, y = NULL, fill = "Propotion of MAGs (%)") +
theme(
text = element_text(size = 12, colour = "black"),
axis.text.x = element_text(angle = 45, hjust = 1)
)
)
name = d
name <- gsub(" ", "_", name)
name <- gsub("/", "_", name)
name <- paste("Figures/Fig_3a_", name, ".pdf", sep = "")
ggsave(name, p1)
plot_list[[d]] = p1
}
- 查看图形
plot_list$`Carbon metabolism`
plot_list$`CO-Oxidation`
plot_list$`Methane metabolism`
plot_list$`Nitrogen metabolism`
plot_list$`Sulfur metabolism`
- 拼图
拼图。我们使用AI软件进行调整和合并即可。虽然,过程比较麻烦,但是最终的效果还是比加分的。此外,若是你愿意折腾,也可以直接使用R进行合并。
使用facet_wrap()
进行绘图
ggplot(dat , aes(Gene_name, Class)) +
geom_tile(aes(fill = mean_tax), colour = "black") +
scale_fill_gradient(
low = "white",
high = list_temp$color,
limits = c(0, 100)
) +
#scale_x_discrete(guide = guide_axis(n.dodge = 2))+
theme_minimal() +
coord_fixed(ratio = 1) +
labs(x = NULL, y = NULL, fill = "Propotion of MAGs (%)") +
theme(
text = element_text(size = 12, colour = "black"),
axis.text.x = element_text(angle = 45, hjust = 1)
)+
facet_wrap(~ Pathway_small)
若我们的教程对你有所帮助,请点赞+收藏+转发,大家的支持是我们更新的动力!!
2024已离你我而去,2025加油!!
往期部分文章
1. 最全WGCNA教程(替换数据即可出全部结果与图形)
推荐大家购买最新的教程,若是已经购买以前WGNCA教程的同学,可以在对应教程留言,即可获得最新的教程。(注:此教程也仅基于自己理解,不仅局限于此,难免有不恰当地方,请结合自己需求,进行改动。)
2. 精美图形绘制教程
3. 转录组分析教程
4. 转录组下游分析
小杜的生信筆記 ,主要发表或收录生物信息学教程,以及基于R分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!!