我正在尝试使用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”不会获取我正在传递的图像。我已经确定图像是否已存储与路径无关。
有人可以帮助我使用此功能吗,或者有其他经过验证的替代方法?
答案 0 :(得分: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)
答案 1 :(得分:0)
对于上下文,您可能会在这里逐步了解openxlsx的文档:ycphs.github.io/openxlsx/articles/Introduction.html
图像链接在链接上不正确。您应该使用:
img <- readJPEG(file.path(path.package("openxlsx"), "extdata/einstein.jpg"))
答案 2 :(得分:-1)
尝试这样的事情:
library(jpeg)
img<-readJPEG("einstein.jpg")
plotFn(img)
insertPlot(wb, 1)
saveWorkbook(wb, "insertImageExample.xlsx", overwrite = TRUE)
file.show("insertImageExample.xlsx")