首页 > 解决方案 > 是否有从 Excel 电子表格导入现有图形的 R 函数?

问题描述

我计划使用 R markdown 从存储在 Excel 电子表格中的主要数据生成摘要单页 PDF。我的合作者已经熟悉在这些电子表格中创建的图表,所以我不想重新创建它们。有没有一种简单的方法可以将这些现有的绘图作为图像从 Excel 电子表格中提取出来并将它们放入 R 降价报告中?

标签: rexcel

解决方案


我能够使用以下代码从 Excel 导出图表:(请参阅如何从 R 中将 Excel 工作表范围导出到图片

library(RDCOMClient) 
xlApp <- COMCreate("Excel.Application")
xlWbk <- xlApp$Workbooks()$Open("C:\\Graph Excel_Test2.xlsx")
xlScreen <- 1
xlBitmap <- 2

xlWbk$ActiveSheet()$ChartObjects(1)$Activate()
graph <- xlWbk$ActiveChart()$SeriesCollection(1)
graph$Select()

oCht <- xlApp$ActiveChart()
oCht$Paste()
oCht$Export("C:\\SavedRange_Test2.jpg", "JPG")

# CLOSE WORKBOOK AND APP
xlWbk$Close(FALSE)
xlApp$Quit()

# RELEASE RESOURCES
oCht <- xlWbk <- xlApp <- NULL
rm(oCht, xlWbk, xlApp)
gc()

之后,您只需在 Rmarkdown 中导入 JPG。


推荐阅读