Я безуспешно пытаюсь экспортировать объект ggsurvplot в PowerPoint с помощью пакета Officer. Мне удалось найти множество инструкций о том, как использовать для этого уже полный ReporterS-пакет, и несколько упоминаний о том, что офицер тоже должен работать. Кажется, в документации нет ничего, что упоминает об этом. Так должно ли это вообще работать? Можно ли с помощью этих инструментов получить векторизованный график выживания на pptx-слайде?
totsur <- ggsurvplot(yhd1,
data = sappivertailu,
combine=TRUE,
xlab = "Time, months",
ylab="Survival",
title="Overall survival",
lwd=2,
palette="jco",
xscale = "d_m",
xlim = c(0,730.5),
break.x.by = 91.3,
risk.table = TRUE,
pval = TRUE,
fontsize = 3)
totsur
my_vec_graph <- dml(code = totsur)
doc <- read_pptx()
doc <- add_slide(doc, layout = "Overall survival", master = "Office Theme")
doc <- ph_with(doc, my_vec_graph, location = ph_location_fullsize() )
print(doc, target = "Sappitutkimus/Charts/survi1.pptx")
Смена dml(ggobj = totsur)
тоже не работает. Что я делаю неправильно?
Изменить: Спасибо за все комментарии ниже! И еще одно обновление. В данных не было ничего плохого. После небольшой отладки мои исходные данные дали желаемый результат.
Остается одна проблема. Кажется, что пакет не может добавить на один слайд таблицу рисков и кривую выживаемости. Да, вы можете пройти это, сделав два отдельных графика на разных слайдах, но я не думаю, что это хорошая практика.
Если я не ошибаюсь, у офицера и репортеров есть общий код, и эта проблема тоже присутствовала. https://github.com/kassambara/survminer/issues/314
Кто-нибудь знает способ обойти это? Вот немного более компактный фрагмент, который я сейчас использую. В противном случае это работает нормально.
yhd1 <- survfit(Surv(sappivertailu$Survi, sappivertailu$Kuolema) ~ Arm, data=koe)
totsur <-
ggsurvplot(yhd1,
combine = TRUE,
data = sappivertailu,
# risk.table = TRUE,
pval = TRUE,
fontsize = 3
)
totsur
my_vec_graph <- rvg::dml(ggobj = last_plot())
doc <- read_pptx()
doc <- add_slide(doc, layout = "Title and Content", master = "Office Theme")
doc <- ph_with(doc, my_vec_graph, location = ph_location_fullsize() )
print(doc, target = "Sappitutkimus/Charts/survi1.pptx")