我有一些图像,我想通过定义坐标在绘图上添加这些图像。
要在绘图上添加单个图像,我有以下代码。
require(jpeg)
img<-readJPEG("C:/Users/dell/Desktop/0.jpg")
#now open a plot window with coordinates
plot(1:10,ty="n")
#specify the position of the image through bottom-left and top-right coords
rasterImage(img,2,2,4,4)
但是我想在R图中显示多个图像
像这样
预先感谢
答案 0 :(得分:1)
也许下面的代码会显示出一种方法来解决问题。这不是一个完整的解决方案,因为实际用例图的坐标将不相同。
显而易见的技巧是转移图片
y
坐标ybottom
和ytop
添加相同的数量以保持比例。x
坐标即可。向xleft
和xright
添加相同的数量以保持比例。在图中,添加的数量为3
。
library(jpeg)
img <- readJPEG(system.file("img", "Rlogo.jpg", package="jpeg"))
old_par <- par(mar = c(2, 3, 1, 1) + 0.1)
xleft <- 2
ybottom <- 21
xright <- 6
ytop <- 25
plot(seq(0, 60, length.out = 31), 0:30, type = "n")
for(i in 1:17){
xleft <- xleft + 3
xright <- xright + 3
rasterImage(img, xleft, ybottom, xright, ytop)
}
for(i in 1:5){
ybottom <- ybottom - 3
ytop <- ytop - 3
rasterImage(img, xleft, ybottom, xright, ytop)
}
for(i in 1:16){
xleft <- xleft - 3
xright <- xright - 3
rasterImage(img, xleft, ybottom, xright, ytop)
}
par(old_par)