如何在R中的导入jpeg上绘制数据?

问题描述:

我已经导入了一个jpeg,我想把数据放在它的顶部(图片是一个栖息地,我有一个生活在该地区的动物的运动数据)。我希望创建与动物记录位置相对应的线条。如何在R中的导入jpeg上绘制数据?

到目前为止,我已经导入使用“readJPEG”的形象,并可视化我的数据这种方式(IMG =我进口JPEG):

plot(1, type="n", xlim=c(100, 150), ylim=c(300, 350)) 
rasterImage(img,100, 300, 150, 350, interpolate = TRUE) 

如何绘制在此之上的数据任何帮助照片?我希望简单地使用已经存在的坐标,当我可视化数据(即上面指出的x和y滴答标签)时。

谢谢!

+4

所以,你到底要什么补充?你应该可以用'points()','lines()','text()'等来添加任何你想要的东西...... – MrFlick

+0

可能重复[在R中,如何用png作为背景进行绘图?] (https://stackoverflow.com/questions/12918367/in-r-how-to-plot-with-a-png-as-background) – Masoud

+0

或者:https://stackoverflow.com/questions/4993189/overlay -data-to-background-image-in-r – Masoud

您可能会发现来自Bioconductor的包装功能EBImage有助于与您的图像的工作,因为他们饶了你设置正确的坐标等等。一旦你readImagedisplay它加载图片的繁琐的任务,你可以使用R基本图形功能,如pointslines,text和类似的东西添加到顶部的东西。坐标设置为使用左上角的原点(1,1)对像素坐标进行成像。以下示例取自package vignette

library("EBImage") 

f = system.file("images", "sample.png", package="EBImage") 
img = readImage(f) 

display(img, method="raster") 
text(x = 20, y = 20, label = "Parrots", adj = c(0,1), col = "orange", cex = 2) 

enter image description here