查看原文
其他

R语言画肿瘤领域的瀑布图

阿越就是我 医学和生信笔记 2023-06-15
关注公众号,发送R语言python,可获取资料

💡专注R语言在🩺生物医学中的使用


今天要说的是肿瘤治疗领域常用的瀑布图,不是生物信息学领域的瀑布图。

瀑布图和泳道图经常一起出现,泳道图的绘制请看历史推文:

用ggplot2画肿瘤领域常见的泳道图
ggplot2画泳道图箭头如何显示

瀑布图可以展示同一个药物治疗不同组别患者之间的治疗效果。

肿瘤领域的瀑布图

其实就是普通的条形图。

首先我们虚构一个数据:

suppressMessages(library(tidyverse))

set.seed(1111)
df <- data.frame(id = 1:60,
                 group = sample(c("group1","group2","group3","group4"),60,replace = T),
                 size = sample(c(-10:-1,1:10),60,replace = T)
                 )
df$id <- factor(df$id)

str(df)
## 'data.frame': 60 obs. of  3 variables:
##  $ id   : Factor w/ 60 levels "1","2","3","4",..: 1 2 3 4 5 6 7 8 9 10 ...
##  $ group: chr  "group4" "group2" "group2" "group2" ...
##  $ size : int  7 5 -3 -7 -2 2 10 3 -9 2 ...
head(df)
##   id  group size
## 1  1 group4    7
## 2  2 group2    5
## 3  3 group2   -3
## 4  4 group2   -7
## 5  5 group4   -2
## 6  6 group1    2

一共3列,第一列是病人编号,第二列是所属组别,比如常见的突变组/未突变组,CP/PR/PD/SD组等等,还有一列是肿瘤变化大小。

如果你需要展示更多的信息,只要再增加列即可。

直接用ggplot2画图即可:

ggplot(df, aes(fct_reorder(id, size), size))+
  geom_bar(stat = "identity", aes(fill=group))+
  scale_x_discrete(name=NULL,labels=NULL)+
  labs(y="Change from baseling (cm)")+
  geom_hline(yintercept = 3,linetype=2,color="red")+
  theme_classic()+
  theme(axis.line.x = element_blank(),
        axis.title.y = element_text(size = 18,color="black"),
        axis.ticks.x = element_blank(),
        axis.text.y = element_text(size = 14,color = "black"),
        legend.direction = "horizontal",
        legend.position = c(0.7,0.1)
        )
plot of chunk unnamed-chunk-2

这个图由于数据问题,并不能看出什么效果,不过画一个瀑布图就是这么简单!





获取更多信息,欢迎加入🐧QQ交流群:613637742


医学和生信笔记,专注R语言在临床医学中的使用、R语言数据分析和可视化。主要分享R语言做医学统计学、meta分析、网络药理学、临床预测模型、机器学习、生物信息学等。


往期推荐



简单易懂:什么是临床预测模型?

一文搞懂临床预测模型的评价!

临床预测模型之二分类资料ROC曲线绘制

临床预测模型之生存资料的ROC曲线绘制

综合判别改善指数IDI的计算

净重新分类指数NRI计算

二分类资料的DCA决策曲线分析

生存资料的决策曲线分析DCA

只会logistic和cox的决策曲线?来看看适用于一切模型的DCA!

Cox回归列线图(nomogram)的4种绘制方法

Logistic回归列线图的4种绘制方法

列线图的本质

C-statistic的显著性检验

ROC(AUC)曲线的显著性检验

生存资料ROC曲线的最佳截点和平滑曲线

区分度评价:C-statistic的计算

使用compareGroups包1行代码生成基线资料表


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存