Я пытаюсь использовать офицерский пакет, чтобы произвести документ PowerPoint, который содержит R Base Graphics, предпочтительно не с фиксированным разрешением, а скорее как редактируемые векторные графика. Вот то, что я пытался, но полученный документ PowerPoint еще не хватает диаграмме (промежуточный {.dml
был создан и содержит некоторые XML).
library (officer)
library (rvg)
# write an R base graphics plot to "plot.dml"
dml_pptx ("plot.dml")
x = (-300:300)/100
plot (x,sin(x),type="l",col="blue")
dev.off ()
# create a PowerPoint document
doc = read_pptx ()
doc = add_slide (doc,layout ="Title and Content",master="Office Theme")
ph_with (doc,external_img (src="plot.dml"),location=ph_location_type(type="body"))
print (doc,"example.pptx")
Когда я вместо этого генерирую графический файл {jpeg ("plot.jpg")
, а затем включите этот файл в презентации, он работает, но я хотел бы избежать фиксированного разрешения и иметь диаграмму, редактируемую в PowerPoint.
Альтернативная стратегия может быть пакет {export
,
library (export)
x = (-300:300)/100
plot (x,sin(x),type="l",col="blue")
graph2ppt (file="example2.pptx",width=6,height=6)
Последнее работает в интерактивном режиме, но не удается в сценарии. Что мне не хватает?
Заранее спасибо за помощь.
HPF
1 ответ
Вам нужно использовать аргумент code
функции dml
и предоставить выражение, содержащее инструкции сюжета:
library(rvg)
library(officer)
library(magrittr)
read_pptx() %>%
add_slide(layout = "Title and Content", master = "Office Theme") %>%
ph_with(dml(code = {
x = (-300:300)/100
plot (x,sin(x),type="l",col="blue")
}), location = ph_location_type(type = "body")) %>%
print(target = "demo_rvg.pptx")
Похожие вопросы
Новые вопросы
r
R - это бесплатный язык программирования с открытым исходным кодом и программная среда для статистических вычислений, биоинформатики, визуализации и общих вычислений. Пожалуйста, предоставьте минимальные и воспроизводимые примеры вместе с желаемым результатом. Используйте dput () для данных и укажите все небазовые пакеты с вызовами library (). Не вставляйте изображения для данных или кода, вместо этого используйте блоки кода с отступом. По вопросам, связанным со статистикой, используйте https://stats.stackexchange.com.