与Survminer的生存剧情 - 空白的剧情

时间:2017-02-27 06:25:46

标签: r plot r-markdown survival-analysis

我目前遇到的问题是在幸存者的rmarkdown chunk输出中出现空白图。请看下面的图片。

enter image description here

它使输出变得困难,因为它在尝试创建报告时包含巨大的空白空间。

enter image description here

我一直在研究这个问题,我已经将其缩小到与此打印“新页面”相关的论点 -

enter image description here

我的问题是 - 有谁可以解释这里到底发生了什么? - 为什么有一个'空白'情节,我怎么能不显示它? - 当我有第一个情节的newpage = F和第二个情节的新页= T没有显示空白页时,到底发生了什么? - 有没有其他方法没有第一个空白图显示?

谢谢!

编辑:

可重复的例子 -

require(survminer)
require(survival)

Data <- data.frame(
X = sample(1:30),
Y = sample(c(1,0), 30, replace = TRUE),
Z = sample(c(1,0), 30, replace = TRUE)
)

ggsurvplot(
 survfit(Surv(Data$X, Data$Y) ~ Data$Z),
 risk.table = T,
 break.time.by = 12,
 risk.table.fontsize = 3,
 font.tickslab = 10,
 font.x = 11,
 xlab = 'Time (Months)',
 font.y = 11,
 font.main = 11,
 legend = c(0.8, .9),
 legend.title = '',
 risk.table.height = .20,
 risk.table.title = element_blank(),
 censor = F,
 pval = T,
 pval.coord = c(6, .00),
 pval.size = 4,
 surv.scale = 'percent',
 risk.table.y.text = F,
 palette = 'Set1'
)

2 个答案:

答案 0 :(得分:2)

为了打印没有前导空白图的生存图,只打印plot返回的ggsurvplot()对象。例如,

library(survival)
library(survminer)
fit <- survfit(Surv(time, status) ~ sex, data = lung)
p <- ggsurvplot(fit, data = lung)
print(p$plot)

答案 1 :(得分:0)

这似乎对我有用:

plot.new() 
print(p,newpage = FALSE)

如果情节具有风险表,这也将起作用。此解决方案比其他人建议先进行plot(p$plot)然后进行plot(p$table)更好,因为表格和绘图保持了很好的对齐。