我使用 R 代码绘制了校准图:http://rpubs.com/IL2/519772
require(rms)
library(Hmisc)
library(grid)
library(lattice)
library(Formula)
library(ggplot2)
library(survival)
library(survival)
data(lung)
lung$sex <- factor(lung$sex,levels = c(1,2),labels = c("male", "female"))
dd=datadist(lung)
options(datadist="dd")
fit1<- lrm(status~ age + sex+ ph.karno,x=T,y=T, data = lung)
cal1 <- calibrate(fit1,X=T,Y=T, method='boot',m=76,B=228)
plot(cal1,lwd=2,lty=1,
cex.lab=1.2, cex.axis=1, cex.main=1.2, cex.sub=0.6,
xlim = c(0,1),ylim= c(0,1),
xlab="Nomogram-Predicted Probability of death risk",
ylab="Actual death (proportion)",
col=c("#00468BFF","#ED0000FF","#42B540FF")
)
lines(cal1[,c(1:3)],
type ="o",
lwd = 1,
pch = 16,
col=c("#00468BFF"))
abline(0,1,lty = 3,
lwd = 2,
col = c("#224444")
)
但是,我的情节无法展示“明显、偏差校正、理想”的所有传说。
如何编辑如下图所示的情节?
最佳答案
您可以使用legend=FALSE
选项并创建自定义图例
并定义确切位置。
plot(cal1, lwd=2, lty=1,
cex.lab=1.2, cex.axis=1, cex.main=1.2, cex.sub=0.6,
xlim=c(0, 1), ylim= c(0, 1),
xlab="Nomogram-Predicted Probability of death risk",
ylab="Actual death (proportion)",
col=c("#00468BFF", "#ED0000FF", "#42B540FF"),
legend=FALSE)
lines(cal1[, c(1:3)], type ="o", lwd=1, pch=16, col=c("#00468BFF"))
abline(0, 1, lty=3, lwd=2, col=c("#224444"))
legend(x=.6, y=.4, legend=c("Apparent", "Bias-corrected", "Ideal"),
lty=c(3, 1, 2), bty="n")
正如您自己发现的那样,为了使图例更窄,我们可以在 legend
中使用选项 y.intersp
,例如图例(... y.intersp=.8)
.
关于r - 如何编辑校准图的图例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59710848/