幸存者 - 有风险主题的表格并不完全显示

时间:2014-06-28 13:31:59

标签: r survival-analysis

这是对先前提出的相关问题的跟进: 数据和代码在这里error message when ploting subjects at risk with survplot

当试图绘制幸存图下面的风险对象时,表格要么与x轴的标签重叠,要么没有出现在图表上(在下面的示例中,缺少一行; totalps = 4)。如何解决这个问题?

enter image description here

从文档到survplot命令,我知道我可能需要使用par命令重置绘图的边距(例如par(mar = c(5,4,4,2)+。1)。)我不明白如何将这个par命令包含在survplot中。

此外,在有风险的受试者的表格线之间存在相当大的空间。有没有直接的方法来减少这个空间?

这里是剧情的代码:

library(rms)
pdf(plot1.pdf)
survplot(KM.Duration.totalps[-1], 
         xlab="duration in months", ylab="survival prob",
         conf="none",
         label.curves=list(method="arrow", cex=0.8),
         time.inc=12,
         col=c(1:4),
         levels.only = FALSE,                   
         n.risk=TRUE,
         y.n.risk = -0.3, cex.n.risk = 0.6
         )

dev.off()

2 个答案:

答案 0 :(得分:1)

在绘制之前设置边距,如下所示:

par(mar=(0,0,0,0))
plot(c(1:10))

会给你一个没有边距的情节。 par(mar=(1,2,3,4)会在底部为您提供一条文本行,两条在左侧,三条在顶部,另外四条在右侧。

如果要以英寸为单位指定边距,请使用par(mai=(x,x,x,x))。 R的默认值是输出设备是7 x 7英寸,虽然取决于设备(包括我写的),但可能有点模糊。

答案 1 :(得分:1)

只需阅读帮助页面:

sep.n.risk
上y限制的倍数 - 用于分隔包含有风险的受试者数量的文本行的y下限。默认值为.056 *(ylim [2] -ylim [1])。

并且一些par函数最好在绘图之前使用par(但是在pdf()调用之后),所以:

pdf(...)
par( mar=c(7,4,4,2)+.1) ) # adds two lines to default space along bottom margin
survplot(...