❝本节来学习NC上一张图表配对箱线图的绘制方法,数据为论文源数据,小编根据个人理解对其进行了绘图,与原文有出入仅供参考。「数据代码将会整合上传到会员交流群」,购买过小编绘图文档的朋友可在所加的会员交流群内获取下载,有需要的朋友可关注文末介绍购买小编的R绘图文档。 ❞
注:此论文提供原始数据及绘图代码,但在运行作者代码时遇到报错颇多,小编根据作者代码进行了修改,对源代码感兴趣的可以去论文中下载。
❝此图与以往图形无区别,此次主要使用自定义函数+循环的方式进行绘图,代码具有较高的可观赏性。 ❞
library(tidyverse)
library(patchwork)
inflam <- read_tsv("data.tsv") %>%
arrange(Group) %>%
mutate(id = rep(1:(n()/3),each=3)) %>% drop_na() %>%
mutate(id=as.character(id)) %>%
mutate(across(where(is.numeric),log2),
id=as.numeric(id))
variables <- c("GM_CSF", "IFNy", "IL_1B", "IL_2", "IL_4", "IL_5",
"IL_6", "IL_8", "IL_10", "IL_12p70", "IL_13",
"IL_17A", "IL_23", "TNFa")
plot_variable <- function(variable, data) {
ggplot(data, aes(x = Time, y = .data[[variable]], fill = Group, color = Group)) +
geom_boxplot(outlier.shape = NA,staplewidth = 0.5) +
geom_line(aes(group = id), size = 0.5, alpha = 0.2) +
geom_jitter(shape = 21, size = 1, stroke = 0.5,
position = position_jitterdodge(dodge.width = 0.8,
jitter.width = 0.2)) +
facet_wrap(~factor(Group, levels = c('IF-P', 'CR'))) +
scale_fill_manual(name = NULL, values = c("magenta3", "darkturquoise")) +
scale_color_manual(name = NULL, values = c("black", "black")) +
labs(y = paste("Log2(", variable, " Concentration)", sep = ""), x = "Time (weeks)") +
scale_x_discrete(labels = c("WK0" = "0", "WK4" = "4", "WK8" = "8")) +
theme_bw() +
theme(legend.position = "none",
strip.background = element_rect(colour = "black", fill = "black", size = 1),
strip.text = element_text(colour = 'white', size = 6, face = "bold"),
axis.text = element_text(size = 6, color = "black"),
axis.title = element_text(size = 8, color = "black",face="bold"),
panel.border = element_rect(color = "black", fill = NA, size = 1),
plot.tag = element_text(size =12,face="bold",color="black")) +
ylim(NA, max(data[[variable]], na.rm = TRUE) * 1.1)
}
plots <- lapply(variables[c(5, 7, 8, 11)], function(variable) {
plot_variable(variable, inflam)
})
do.call("wrap_plots", c(plots, ncol = 4))+
plot_annotation(tag_levels = 'a')
ggsave(filename = "./Fig2.png",
plot = do.call("wrap_plots", c(plots, ncol = 4))+
plot_annotation(tag_levels = 'A'),
height = 6, width = 18, units = "cm")
❝本节介绍到此结束,有需要获取此文档代码的朋友,欢迎到淘宝店铺R语言数据分析指南,购买小编的R数据可视化案例文档(2024版),「购买将赠送2023年的绘图文档内容」。目前此文档(2023+2024)「已经更新上传了150+案例文档」,每个案例都附有相应的数据和代码,并配有对应的注释文档,方便大家学习和参考。 ❞
2024更新的绘图内容同时包含数据+代码+markdown注释文档+文档清单,「小编只分享案例文档不额外回答问题无答疑问。」