肿瘤免疫反应瀑布图(源于The Miller Lab)

目录

数据格式

绘图

①根据剂量

②根据type

③根据治疗响应度

添加水平线

数据格式

肿瘤免疫响应数据

rm(list = ls()) 
library(tidyverse)
library(dplyr)
library(knitr)#模拟数据
# We will randomly assign the two doses, 80 mg or 150 mg, to the 56 subjects
Merkel <- data.frame(id=c(1:56), type = sample((rep(c("laMCC", "metMCC"), times =28))), response = c(30, sort(runif(n=53,min=-10,max=19), decreasing=TRUE),-25,-31), dose= sample(rep(c(80, 150), 28)))# Let's assign Best Overall Response (BOR)
Merkel$BOR= (c("PD", rep(c("SD"), times =54),"PR"))
head(Merkel)id   type response dose BOR
1  1 metMCC 30.00000  150  PD
2  2 metMCC 18.99641   80  SD
3  3  laMCC 18.78160   80  SD
4  4 metMCC 17.98778  150  SD
5  5 metMCC 16.61512   80  SD
6  6 metMCC 16.30297   80  SD

绘图
①根据剂量
##颜色设置
col <- ifelse(Merkel$dose == 80, "steelblue", # if dose = 80 mg, then the color will be steel blue"cadetblue") # if dose != 80 mg (i.e. 150 mg here), then the color will be cadet blue
MCC<- barplot(Merkel$response, col=col, border=col, space=0.5, ylim=c(-50,50),main = "Waterfall plot for Target Lesion Tumor Size", ylab="Change from baseline (%)",cex.axis=1.5, legend.text= c( "80mg", "150mg"),#添加图例args.legend=list(title="Treatment Dose", fill=c("steelblue", "cadetblue"), border=NA, cex=0.9))dev.off()


②根据type
col <- ifelse(Merkel$type == "laMCC", "#BC5A42", # if type of disease = locally MCC, then the color will be #BC5A42 (deep red)"#009296") # if type of disease != locaally MCC (i.e. mMCC), then the color will be ##009296 (greenish-blue)MCC<- barplot(Merkel$response, col=col, border=col, space=0.5, ylim=c(-50,50),main = "Waterfall plot for Target Lesion Tumor Size", ylab="Change from baseline (%)",cex.axis=1.5, legend.text= c( "locally advanced MCC", "Metastatic MCC"),args.legend=list(title="Disease", fill=c("#BC5A42", "#009296"), border=NA, cex=0.9))


③根据治疗响应度
col <- ifelse(Merkel$BOR == "CR", "green", # if a subject had a CR the bar will be green, if they did not have a CR....ifelse(Merkel$BOR == "PR", "steelblue", # then, if a subject had a PR the bar will be steel blue, if they did not have a PR or CR....ifelse(Merkel$BOR == "PD", "red", # then, if a subject had a PD the bar will be red, otherwise if they did not have a PR or CR or PD.... ifelse(Merkel$BOR == "SD", "cadetblue", # then they must have ahd a SD, so the bar will be cadetblue, otherwise...."") # the color will be blank (which is not really an option, b/c they must have either a CR, PR, PD or SD))))MCC<- barplot(Merkel$response, col=col, border=col, space=0.5, ylim=c(-50,50),main = "Waterfall plot for Target Lesion Tumor Size", ylab="Change from baseline (%)",cex.axis=1.5, legend.text= c( "CR: Complete Response", "PR: Partial Response", "SD: Stable Disease", "PD: Progressive Disease"),args.legend=list(title="Best Overall Response", fill=c("green","steelblue",  "cadetblue", "red"), border=NA, cex=0.9))


添加水平线
abline(h=20, col = "black", lwd=0.5) # The "PD" line
abline(h=-30, col = "black", lwd=0.5) # This "PR" line

来源:

The Miller Lab - Visualizing Tumor Response using Waterfall Charts with R

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/789865.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年第八届材料科学与纳米材料国际会议(ICMSN 2024)即将召开!

2024年第八届材料科学与纳米材料国际会议&#xff08;ICMSN 2024&#xff09;将于2024年7月9日至12日在英国爱丁堡召开。在过去的十年中&#xff0c;纳米材料一直是人们极大关注的主题。这些材料以其极小的特征尺寸而著称&#xff0c;具有广泛的工业、生物医学和电子应用潜力。…

深度学习之详解常见梯度算法(概念、公式、原理、算法实现过程)

目录 前言 一、如何实现梯度下降&#xff1f; 二、梯度计算 三、常见的梯度公式及梯度算法 常见的梯度公式&#xff1a; 1.标量对向量的梯度&#xff1a; 2. 标量对矩阵的梯度&#xff1a; 3. 向量对标量的梯度&#xff1a; 常见梯度算法&#xff1a; 四、常见梯度算法实现 1、…

OWASP API 安全风险,有哪些安全措施

随着互联网的快速发展&#xff0c;Web应用已成为人们日常生活和工作中不可或缺的一部分。然而&#xff0c;Web应用的安全问题也日益凸显&#xff0c;给企业和个人带来了极大的风险。 对于一些安全行业的用户来说&#xff0c;不少都听过关于OWASP这个词&#xff0c;很多用户想要…

面试算法-136-安排工作以达到最大收益

题目 你有 n 个工作和 m 个工人。给定三个数组&#xff1a; difficulty, profit 和 worker &#xff0c;其中: difficulty[i] 表示第 i 个工作的难度&#xff0c;profit[i] 表示第 i 个工作的收益。 worker[i] 是第 i 个工人的能力&#xff0c;即该工人只能完成难度小于等于 …

【LeetCode】第2题:两数相加(AHK v2)

LeetCode第2题&#xff1a;两数相加(AHK v2) You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as a linked …

ssm024家政服务网站设计+jsp

家政服务管理系统 摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 家政服务网站&#xff0c;主要的模块包括查看管理员&#xff1b;个人中心、用户管理、服务类型管理、家政类型管理、家政评…

学代码是理解就行,还是全部背?

在我没接触编程以前&#xff0c;看到程序&#xff0c;觉得这玩意到底怎么写出来的&#xff0c;写出这些代码的人&#xff0c;也太厉害了吧&#xff1f; 不会很多都要背下来吧&#xff1f; 我小学背课本都费劲&#xff0c;背不出来&#xff0c;中午不准回家吃饭&#xff0c;我就…

【ARM 嵌入式 C 字符串系列 23.3 -- snprintf 函数详细介绍并举例】

请阅读【嵌入式开发学习必备专栏 】 文章目录 snprintf 函数简介函数原型返回值示例总结 snprintf 函数简介 snprintf 函数是 C 语言中的一个标准库函数&#xff0c;用于将格式化的数据写入字符串。它是 printf 函数族的一部分&#xff0c;与 sprintf 类似&#xff0c;但提供了…

【零基础入门芯片课】半导体是什么?

大家好&#xff0c;我是砖一。 今天给大家分享一下半导体的基础知识&#xff0c;普及一下何为半导体&#xff0c;有从事IC&#xff0c;功率元器件&#xff0c;开关电源的朋友可以了解一下&#xff0c;希望对你有用~ 近几年&#xff0c;我们或多或少听过半导体&#xff0c;芯片…

02 Python进阶:CGI编程

什么是CGI CGI是通用网关接口&#xff08;Common Gateway Interface&#xff09;的缩写&#xff0c;它是一种标准协议&#xff0c;用于Web服务器执行外部程序或脚本与Web浏览器进行交互。通过CGI&#xff0c;Web服务器能够动态生成网页内容&#xff0c;处理用户提交的表单数据…

33-5 XXE漏洞 - xxe外部实体注入相关工具

1)xxe.sh || OOB XXE tool:一个方便的网站,可以输入您的域名并生成OOB XXE PoC。适用于盲注Out-of-band攻击。(主要) 2)staaldraad/xxeserv :简化FTP服务器的设置,以通过FTP接收OOB XXE攻击 以下是 ./xxeserv 命令的使用说明: Usage of ./xxeserv:-o string记录日志…

js的Proxy和Reflect

目录 Proxy对象的基本操作常见捕获器getset函数相关拦截器 ReflectReflect与基本语法的区别Reflect常见方法 Proxy和Reflect 在 ES6之前&#xff0c;如果我们对对象进行 新增或者删除属性时&#xff0c;仅靠原有的 Object.defineProperty是无法 监听的&#xff0c;基于此&a…

QT4-QT5-VS2019-编译无法打开文件 QtCore/qchar.h

1.系统环境变量 添加QTDIR 添加PATH 2.项目配置 2.1vc目录&#xff1a;包含目录库目录 2.2C/C 常规&#xff1a;附加包含目录QT5的头文件必须在附加包含目录里配置。 2.3链接器&#xff1a;附加库目录 2.4QTProject Settings

镜舟科技荣获第十三届中国智能制造高峰论坛两项大奖

2024年3月29日&#xff0c;由e-works数字化企业网和湖北省中小企业服务中心联合主办&#xff0c;中国中小企业发展促进中心指导的“第十三届中国智能制造高峰论坛暨第二十一届中国智能制造岁末盘点颁奖典礼”在北京圆满落幕。本次论坛汇聚了国内外智能制造领域的专家学者、企业…

有效的职场沟通及其重要性

欢迎来到职场沟通的世界&#xff0c;在这里&#xff0c;每一个词都至关重要&#xff0c;沉默则能传达出无尽的信息。一个有效沟通能力不仅仅是在线办公套件中的可选配件&#xff0c;而是一项绝对必需的能力。今天我们与您分享有效的职场沟通及其重要性。有效的职场沟通可以增强…

Redis高可用及持久化

文章目录 一、Redis高可用1、Redis高可用概述2、Redis高可用策略 二、Redis持久化1、Redis持久化的功能2、Redis持久化的两种方式2.1 RDB持久化2.2 AOF持久化&#xff08;append only file&#xff09; 3、RDB持久化3.1 触发条件3.1.1 手动触发3.1.2 自动触发3.1.2.1 配置方式3…

桶排序---

1、算法概念 桶排序&#xff1a;一种非比较的排序算法。桶排序采用了一些分类和分治的思想&#xff0c;把元素的值域分成若干段&#xff0c;每一段对应一个桶。在排序的时候&#xff0c;首先把每一个元素放到其对应的桶中&#xff0c;再对每一个桶中的元素分别排序&#xff0c…

python面向对象的四大支柱:抽象、封装、继承、多态

1. 抽象 在面向对象编程中&#xff0c;抽象是指将类的属性和方法捆绑在一起&#xff0c;形成一个整体。抽象类无法实例化&#xff0c;但可以作为其他类的基类或父类。在Python中&#xff0c;我们使用abc模块定义抽象类&#xff0c;其中至少包含一个抽象方法。抽象方法是无法直…

EF数据持久化(三层架构,公司查,改)

效果图 Model设置具体流程在下面链接中 https://blog.csdn.net/Mr_wangzu/article/details/136805824?spm1001.2014.3001.5501 DAL using System; using System.Collections.Generic; using System.Linq; using System.Web; using WebApplication2.Models; namespace WebAppli…

基于OpenStack官方的Ubuntu 22.04.3 LTS部署OpenStack-Bobcat教程(Neutron使用OVN)

基于OpenStack官方的Ubuntu 22.04.3 LTS部署OpenStack-Bobcat教程&#xff08;Neutron使用OVN&#xff09; 注意事项机器详情基础配置Controller节点设置主机名设置静态IP配置hosts Compute节点设置主机名设置静态IP配置hosts 验证配置Controller节点 && Compute节点 配…