为RCS曲线添加不同图例

先祝大家新年快乐,新的一年蒸蒸日上,心想事成。近日有粉丝和我说投稿返修,编辑要求要对RCS曲线的可信区间进行标注,即需要把RCS改成下图的形式,
在这里插入图片描述
下面我们通过R语言来演示一下

library(foreign)
library(rms)
be <- read.spss("E:/r/test/ozone.sav",
                use.value.labels=F, to.data.frame=T)  #我的臭氧数据
names(be)

在这里插入图片描述
这里我们使用我们原来的臭氧的数据,主要描述的是臭氧浓度和大气一些相关指标的情况(公众号回复:臭氧,可以获得数据),数据中有七个变量,ozon每日臭氧水平为结局变量,Inversion base height(ibh)反转基准高度,Pressure gradient (mm Hg) 压力梯度(mm Hg),Visibility (miles) 能见度(英里),Temperature (degrees F) 温度(华氏度),Day of the year日期,vh我也不知道是什么,反正就是一参数,这里所有的变量都是连续的。

对数据进行整理

dd <- datadist(be) #为后续程序设定数据环境
options(datadist='dd') #为后续程序设定数据环境

建立模型

fit<-ols(ozon ~rcs(ibh, 4)+temp,data=be)

生成预测值
OR<-Predict(fit, ibh)
我们先对线条颜色和线型进行一个设定

line=c('95%cilower'=2,'Estimation'=1,'95%ciupper'=2)
cols=c('95%cilower'="black", 'Estimation'="black", '95%ciupper'="black")

绘图

ggplot(OR)+
  geom_line(data=OR, aes(ibh,yhat,colour = 'Estimation', linetype = "Estimation"),size=1)+
  geom_line(data=OR, aes(ibh,lower,colour = '95%cilower', linetype = "95%cilower"),size=1)+
  geom_line(data=OR, aes(ibh,upper,colour = '95%ciupper', linetype = "95%ciupper"),size=1)+
  scale_linetype_manual(name="线条说明",values = line)+
  scale_colour_manual(name="线条说明",values=cols)+
  theme_classic()+
  theme(legend.position = c(.8,.8),
        legend.key.width = unit(2,"cm"),panel.grid.major = element_blank(), panel.grid.minor = element_blank())

在这里插入图片描述
这样图就绘制好了,当然也可以通过AI这种修图软件改图。

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
要绘制R语言中的分类的RCS曲线,可以使用rms包中的ols函数和olspline函数。下面是一段示例代码,演示了如何使用R语言绘制多分类的RCS曲线: library(rms) # 导入乳腺癌数据 bc <- read.spss("E:/r/test/Breast cancer survival agec.sav", use.value.labels=F, to.data.frame=T) bc <- na.omit(bc) names(bc) attach(bc) # 使用ols函数拟合线性模型 fit <- ols(Surv(time, status) ~ rcs(age, 3) + pathsize + histgrad + er + pr, data=bc) # 使用olspline函数绘制RCS曲线 plot(Predict(fit, age), ylim=c(0,1), xlab="Age", ylab="Survival Probability") legend("topright", c("Pathsize", "Histgrad", "ER", "PR"), lty=1, col=c("red", "blue", "green", "purple")) 这段代码中,我们使用ols函数拟合了一个线性模型,其中rcs(age, 3)表示对年龄变量进行限制性立方样条变换,并使用了其他变量如pathsize、histgrad、er和pr作为预测因子。然后使用olspline函数绘制了RCS曲线,同时绘制了其他变量的曲线。 需要注意的是,这段代码仅仅是一个示例,具体的细节和数据处理需要根据实际情况进行调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [R语言2种方法绘制分类的RCS曲线](https://blog.csdn.net/dege857/article/details/123727169)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天桥下的卖艺者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值