2017-06-19 98 views
1

我已經導入了一個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

回答

0

您可能會發現來自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