如果我有一个 .PNG 文件,是否有一种简单的方法可以在 RStudio 查看器窗格中显示它?
使用这个答案https://stackoverflow.com/a/9319351/2554330我可以在绘图窗格中使用
library(png)
filename <- system.file("img", "Rlogo.png", package="png") # or your own file
img <- readPNG(filename)
grid::grid.raster(img)
将其放入查看器窗格的一种复杂方法是:
temp <- tempfile(fileext = ".html")
writeLines(as.character(htmltools::img(src=knitr::image_uri(filename))), temp)
getOption("viewer")(temp)
但有更简单的方法吗?例如,某个包中是否有一个现有函数可以在一次调用中执行此操作,例如
showPNG(filename)
? 我可以在这样的函数中编写我的代码,但我更喜欢使用其他人的代码,这些代码已经过测试并且可能在比 RStudio 等更广泛的环境中工作。
编辑添加:我一直在仔细查看我接受的答案(因为我想避免依赖于magick包),并发现了令我惊讶的事情:如果filename是"preview.png",那么getOption("viewer")(filename)将在查看器窗格中显示。 magick::image_read很灵活,可以处理许多其他情况,但对我来说,它基本上只是复制和重命名文件!