3

有没有办法将图像加载到 R 中并以 pdf 格式输出?

我知道如何绘制到 pdf 并且我尝试使用 raster 和 jpeg 包,但它们不会输出图像。

目的是我正在构建一个 PDF 图表包,并希望在页面上有一个徽标。

有人知道另一种方式吗?

4

4 回答 4

3

光栅对此没有任何问题:

library(raster)
r <- brick(file.path(R.home(), "doc", "html", "logo.jpg"))
pdf("a.pdf")
plotRGB(r)
dev.off()

请注意,如果要将 image() 用于大型栅格,最好设置 useRaster = TRUE (栅格默认对其对象执行此操作,或直接使用 rasterImage() )以避免非常大的 PDF 文件。

于 2013-04-16T11:55:42.303 回答
3

我从 Matloff 的书“R 编程的艺术”(第 63 页,试试 Google 书籍)中借用:

library(pixmap)
logo <- read.pnm("filename") # the file has to be in PPM format
pdf("path/filename.pdf")
plot(logo)
dev.off()

或者,您可以尝试使用addlogo()同一个包中的函数,允许徽标坐标似乎很有希望,尽管我没有时间彻底测试它。您可以使用其中一种在线转换器将 JPG(或任何您拥有的)转换为 PPM。

另外,请参阅thisthis thread,它们都处理类似的问题。那里提供的答案要详细得多。

于 2013-04-16T10:06:05.840 回答
0

试试biOpsCRAN 的软件包。

# Read image
im = readJpeg('path/to/image')
# Save to pdf
pdf('path/to/pdf')
plot(im)
dev.off();

以我的经验,这比我用过的其他软件包快一点

于 2013-05-04T21:40:57.413 回答
0

像这样 -

m = matrix(rnorm(100), 10, 10)
pdf("image.pdf")
image(m)
dev.off()
于 2013-04-16T09:49:10.550 回答