Addnig文本到受限制的三次样条曲线图

时间:2016-04-15 14:42:31

标签: r spline

我有以下假设数据来绘制受限制的三次样条

library(rms)
library(survival)
n <- 1000
set.seed(731)
age <- 50 + 12*rnorm(n)
label(age) <- "Age"
sex <- factor(sample(c('Male','Female'), n, rep=TRUE, prob=c(.6, .4)))
cens <- 15*runif(n)
h <- .02*exp(.04*(age-50)+.8*(sex=='Female'))
dt <- -log(runif(n))/h
label(dt) <- 'Follow-up Time'
e <- ifelse(dt <= cens,1,0)
dt <- pmin(dt, cens)
units(dt) <- "Year"
dd <- datadist(age, sex)
options(datadist='dd')
S <- Surv(dt,e)

f <- cph(S ~ rcs(age,4) + sex, x=TRUE, y=TRUE)
cox.zph(f, "rank")             # tests of PH
anova(f)
plot(Predict(f, age, sex)) # plot age effect, 2 curves for 2 sexes

通过以上数据,我得到了这个精美的情节: enter image description here

我想向其添加以下文字text(60,-1,"p < 0.001"),但它不起作用并给我以下错误消息:plot.new has not been called yet。有什么想法可能是什么问题?我可以用其他任何方式添加文字(或图例)吗?

1 个答案:

答案 0 :(得分:1)

rms包移动到晶格绘图平台。您需要在面板调用或补充晶格函数之一中添加文本。请参阅?llines或使用trellis.focus

[![ap <- function(...) { ltext(60, 1, "p < 0.001") }

plot(Predict(f, age, sex), addpanel=ap)][1]][1]