适合R网格图形父(顶部)视口大小到图像

时间:2018-02-21 17:04:20

标签: r ggplot2 graphics r-markdown lattice

使用R的网格图形系统生成它时,是否有办法将最上面的视口(即图形输出尺寸)的大小调整到内部凹槽的大小?

pdf(file = "test.pdf", width = 7, height = 2.7)接近我想要的,但我想剪切光栅图像。此外,我想直接在RMarkdown中使用图形输出。

library(grid)
library(jpeg)

img <- readJPEG(system.file("img", "Rlogo.jpg", package="jpeg"))

grid.rect(x = 0.25, width = 0.5)
grid.raster(img, x = 0.25, width = 0.5)  
grid.rect(x = 0.75, width = 0.5)
grid.raster(img, x = 0.75, width = 0.5)

A lot of space gets wasted

我希望导出的图形文件与光栅图像一样高,以避免在将图像包含在文本文件中时浪费空间。

另一个问题是光栅图像上的文本定位:当图像重新缩放时,文本的位置会发生变化。

1 个答案:

答案 0 :(得分:0)

试试这个

ar <- dim(img)[1]/dim(img)[2]
grid.rect(vp=viewport(width=unit(0.5,"snpc"), height=unit(0.5*ar,"snpc")))
grid.raster(img, width=unit(0.5,"snpc"))

enter image description here