0

我正在尝试使用 R 包 openxlsx 将保存在我的文件夹中的图像粘贴到 Excel。我已经完全研究了包文档并遵循了文档中给出的步骤。但即使是包中给出的例子也不适合我

## Create a new workbook
wb <- createWorkbook("Ayanami")
## Add some worksheets
addWorksheet(wb, "Sheet 1")
addWorksheet(wb, "Sheet 2")
addWorksheet(wb, "Sheet 3")
## Insert images
img <- system.file("einstein.jpg", package = "openxlsx")
insertImage(wb, "Sheet 1", img, startRow = 5, startCol = 3, width = 6, height = 5)
insertImage(wb, 2, img, startRow = 2, startCol = 2)
insertImage(wb, 3 , img, width = 15, height = 12, startRow = 3, startCol = "G", units = "cm")
## Save workbook
saveWorkbook(wb, "insertImageExample.xlsx", overwrite = TRUE)

这是包文档中给出的示例。我使用的是“.jpg”文件,而不是“einstein.jpg”。我正在尝试将该图像粘贴到我的工作簿“wb”中。函数“system.file”不获取我传递的图像。我已确保图像是否已存储没有与路径相关的问题。

任何人都可以帮助我使用此功能或有任何经过验证的替代方案吗?

4

3 回答 3

0

您不应该使用system.file函数,因为您尝试粘贴到工作簿中的图像不是系统文件。

相反,您将需要类似的东西:

img <- "C:/your_dir/your_filename.jpg"

insertImage(wb, "Sheet 1", img, startRow = 5, startCol = 3, width = 6, height = 5)
saveWorkbook(wb, "insertImageExample2.xlsx", overwrite = TRUE)
于 2019-04-29T06:26:32.760 回答
0

对于上下文,您可能会在此处逐步浏览 openxlsx 的文档:ycphs.github.io/openxlsx/articles/Introduction.html

链接上的图像链接不正确。你应该使用:

img <- readJPEG(file.path(path.package("openxlsx"), "extdata/einstein.jpg"))
于 2020-12-03T09:16:51.610 回答
-1

尝试这样的事情:

    library(jpeg)
    img<-readJPEG("einstein.jpg")
    plotFn(img)
    insertPlot(wb, 1)
    saveWorkbook(wb, "insertImageExample.xlsx", overwrite = TRUE)
    file.show("insertImageExample.xlsx")
于 2020-11-01T08:16:38.713 回答