跟着Nature Communications学作图:R语言ggplot2画图展示捐赠者的临床概况
论文
Common anti-cancer therapies induce somatic mutations in stem cells of healthy tissue
https://www.nature.com/articles/s41467-022-33663-5#Sec18
今天的推文我们重复一下论文中的Figure1a,看起来非常像一个表格,很有意思
我们使用ggplot2来实现,主要分为三个部分,文本,形状,和背景的灰色条
首先是文本的部分数据截图
形状的三个数据截图
背景灰色条数据截图
总共5份数据,放在同一个excel文件里,5个不同的子表格
读取数据并作图
library(readxl)
library(ggplot2)
library(stringr)
library(tidyverse)
dat01<-read_excel("data/20221009/example_data.xlsx",
sheet = "Sheet1")
dat01 %>%
mutate(label01=case_when(
length(label) == 7 ~ str_pad(label,8,"right"),
TRUE ~ label
)) -> new.dat01
new.dat01
dat02<-read_excel("data/20221009/example_data.xlsx",
sheet = "Sheet2")
dat02
dat03<-read_excel("data/20221009/example_data.xlsx",
sheet = "Sheet3")
dat03
dat04<-read_excel("data/20221009/example_data.xlsx",
sheet = "Sheet4")
dat04
dat05<-read_excel("data/20221009/example_data.xlsx",
sheet = "Sheet5")
dat05
x_labels<-c("","Age","Normal/nTissue","Tissue/nSubtype",
"Treatment/ntype","Treatment/ncycli",
"Sampling after/ntreatment/n(months)",
"Seqenced/nsamples")
ggplot()+
scale_x_continuous(limits = c(0.5,8),
breaks = 1:8,
labels = x_labels,
position = "top")+
geom_text(data=new.dat01,aes(x=x,y=y,label=label01))+
geom_point(data=dat02,aes(x=x,y=y,color=`Normal tissue type`),
size=5)+
scale_color_manual(values = c("Colon"="#d38e91",
"Liver"="#1f639a"))+
ggnewscale::new_scale_color()+
geom_point(data=dat03,aes(x=x,y=y,color=`Tissue subtype`),
size=5)+
scale_color_manual(values = c("Descending colon"="#f6d65b",
"Sigmoid"="#3eada2",
"Rectum"="#eb553a",
"Liver"="#206599"))+
ggnewscale::new_scale_color()+
geom_point(data=dat04,aes(x=x,y=y,color=Treatment),
size=5,shape=15)+
scale_color_manual(values = c("5-FU + platinum"="#f49b5e",
"5-FU + radiation"="#c44657",
"5-FU + platinum + radiation"=
"#89520e"))+
theme_bw()+
theme(axis.title = element_blank(),
panel.grid = element_blank(),
panel.border = element_blank(),
axis.text.y = element_blank(),
axis.ticks = element_blank(),
axis.text.x = element_text(hjust=0.5,vjust=0.5))+
geom_rect(data=dat05,
aes(xmin=-Inf,xmax=Inf,ymin=ymin,ymax=ymax),
fill="gray",alpha=0.2)
示例数据和代码可以给推文点赞 点击在看 最后留言获取
欢迎大家关注我的公众号
小明的数据分析笔记本
小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!
共有 0 条评论