Вставить график в существующий слайд pptx, используя функцию "ph_with_vg_at" R

У меня есть R-приложение, которое создает большое количество редактируемых клиентских диаграмм с помощью инструмента Office (pptx). Я пытаюсь встроить график ggplot в существующий маршрут в векторном формате. Я использую функцию ph_with_vg_at для экспорта графика в pptx. Дело в том, что экспорт графика в pptx удаляет все те элементы, которые уже существуют на слайде. Как тогда я могу экспортировать график на слайд, не удаляя информацию на слайде?

Слава Джони

1 ответ

Хорошо

Оказывается, все просто, если вы понимаете синтаксис... Давайте возьмем простой пример ggplot:

require("officer")
require("rvg")
require("ggplot2")

gg <- ggplot(mtcars, aes(x = mpg , y = wt, colour = qsec)) + geom_point() + theme_minimal()

Вариант 1. Открытие существующей презентации и вставка нового объекта (при удалении объектов в презентации):

doc <- read_pptx() # Creat a virtual new pptx and set the ggplot as a new slide
doc <- add_slide(doc, layout = "Title and Content", master = "Office Theme")
doc <- ph_with_vg(doc, code =print(gg),type = "body")


print(doc, target = "G:/Layers/gg.pptx") # Exporting to Exist pptx file

Вариант 2. Открытие существующей презентации и вставка объекта в существующий слайд без удаления существующих объектов на слайде:

doc <- read_pptx(path = "G:/Layers/template.pptx")# Opening an Exist pptx file


doc <- on_slide( doc, index = 1)# Embedding of the ggplot into the slide
doc <- ph_with_vg_at(doc, ggobj = gg, left=0.1, top=0.1, width=7.5, height=6)

   print(doc, target = "G:/Layers/template.pptx")# Exporting to Exist pptx file

Joni

Попробуйте eoffice:

install.packages("eoffice")
library(eoffice)
gg <- ggplot(mtcars, aes(x = mpg , y = wt, colour = qsec)) + geom_point() + theme_minimal()
topptx(gg,file="gg.pptx")
Другие вопросы по тегам