可能重复:
将数据叠加到 R 中的背景图像上
我在背景中看到了带有照片的漂亮图形。那么有可能吗?
请问专家如何在经典直方图的背景中放置照片,JPG或其他格式,以便边界接触X和Y轴?
谢谢你。
您可以使用该rasterImage
功能将栅格添加到现有图形,然后它将成为在其之上添加的任何内容的背景。有关读取 jpeg 或其他图像格式的方法,请参阅@mplourde 评论中的链接,然后可以将其与rasterImage
.
运行par('usr')
将为您提供当前用户坐标以从轴绘制到轴,或者您可以使用grconvertX
并grconvertY
查找其他坐标集。因此,对于直方图,您可以绘制直方图,然后用于rasterImage
放置图像,然后再次使用 hist add=TRUE
:
tmp <- rnorm(100)
hist(tmp)
image <- as.raster(matrix(0:1, ncol=5, nrow=3))
tmp2 <- par('usr')
rasterImage(image, tmp2[1], tmp2[3], tmp2[2], tmp2[4])
hist(tmp, add=TRUE, border='red', lwd=3)
但是,要非常小心,背景图像不会分散直方图本身的注意力,可能会使图像褪色或添加 Alpha 通道以使其半透明会有所帮助。