目前本人写的ggrcs包新的3.5版本已经在CRAN上线,目前支持逻辑回归(logistic回归)、cox回归和多元线性回归。
需要的可以使用代码安装
install.packages("ggrcs")
如果原来安装了旧版本,可以通过Rstudio进行升级
这样就可以升级到最新版本了
这次更新据上次有一段时间了,这次的改版主要增加了两个内容,一是增加了一些曲线色彩代培主题,有大佬说我的曲线色彩太单调了,不是红就是绿,没有高级感,这次我也花了点时间研究了下色彩搭配,设置了5个色彩搭配风格,增加了更加多的调整参数,二是应粉丝要求,增加了P for overall的结果输出,我还是挺听劝的。
下面我来介绍一下新功能我们导入R包和数据,这次需要多导入一个cowplot包,这个包你不导入也可以,但是必须安装好。数据还是选用R包自带的吸烟数据
library(ggrcs)
library(rms)
library(ggplot2)
library(scales)
library(cowplot)
导入R包数据
dt<-smoke
整理数据
dd<-datadist(dt)
options(datadist='dd')
生成模型,假设咱们想了解年龄、性别和发病率的关系
fit<- cph(Surv(time,status==1) ~ rcs(age,4)+gender, x=TRUE, y=TRUE,data=dt)
ggrcs(data=dt,fit=fit,x="age")
这种风格比原来好看点了把,这个风格我定义为紫红+天蓝色。我把柱子的透明度增加了,这样看起来淡一点,颜色没有这么浓了,是不是高级感突出了一点。我也增加了调节透明度的参数histalpha这个是用来调节柱子透明度的,linealpha这个是用来调节线条透明度的。
咱们看下双组的
ggrcs(data=dt,fit=fit,x="age",group="gender")
这种淡淡的风格我也挺喜欢的,调节文字位置的参数变成px和py了,这样简单一点。
ggrcs(data=dt,fit=fit,x="age",group="gender",px=10,py=18)
我对图例的名字从新进行了设定,就是你的变量名,不是原来的1和2了,当然和原来一样,你也可以通过twotag.name这个参数更改图例名,接着说下我设置的其他4种颜色风格,可以通过colset这个参数设定的,就是A,B,C,D这样,以后还可以添加,先来个A的风格,A风格是深海绿+黄金1
ggrcs(data=dt,fit=fit,x="age",group="gender",colset = "A")
B风格, 深海绿+实木3
ggrcs(data=dt,fit=fit,x="age",group="gender",colset = "B")
C风格cornsilk+palegreen
D风格就不介绍了,自己摸索一下。下面我介绍一下singlercs函数,这个也是和ggrcs函数一样,进行了风格设定
singlercs(data=dt,fit=fit,x="age")
这条曲线有点淡淡的,可以把透明度调高点
singlercs(data=dt,fit=fit,x="age",ribalpha=0.5)
线条的透明度也可以调的,使用linealpha这个参数,这里我就不演示了,我这次直接在下面生成了一条参考线,如果是OR和HR就是1为参考,如果是线性回归就是0为参考,如果你不需要这个参考线可以使用gethline=F这个参数关掉它。
来个双组的
singlercs(data=dt,fit=fit,x="age",group="gender")
这里的P for nonlinear的P值我要说明一下,这里并不是亚组间比较的P值,而是 目标变量age和结局间比较的P值,亚组间比较的P值叫做P for interaction,而我这里是P for nonlinear。说我这里算得不对的请先搞清楚别人算得是什么再做评价。
接下来也是风格的演示
singlercs(data=dt,fit=fit,x="age",colset = "A")
来个双组的
singlercs(data=dt,fit=fit,x="age",group="gender",colset = "B")
下面附上一些颜色搭配的参考方案,自定义颜色和原来是一样的。
最后有个小请求,如果你在画曲线的时候有什么好的颜色搭配方案又愿意分享的,欢迎你来私聊我,如果被成功收录进来,我可以继续做成颜色搭配的风格模板,可以以你的名字命名,比如:张三的模板
singlercs(data=dt,fit=fit,x="age",group="gender",colset = "zhangsan")
希望大家踊跃加进来,一起把这件事做好。