R映射filled.contour地理配准插值

时间:2015-02-03 03:33:07

标签: r mapping geospatial contour interpolation

我正在尝试制作类似这样的地图,但分辨率更高,而且外观更像瓷砖:

map 1 -using interp() and image.plot()

使用此代码:

samps <- read.csv("Petra_phytoplankton+POM_xydata_minusNAs_noduplicates.csv")   #my data for sampling sites, contains a column of "lat" and a column of "lon" with GPS points in decimal degrees

samps_test<-samps

x<-samps_test$longitude
y<-samps_test$latitude
z<-samps_test$d13C

## interpolation using akima
x0<-seq(min(x), max(x), length = 100)
y0<-seq(min(y), max(y), length = 100)
z.hat <- interp(x,y,z)

#plot
par(mar=c(4.1,4.1,1,1))
image.plot(z.hat)
map(add=TRUE, fill=TRUE)
points(samps_test$longitude,samps_test$latitude,pch=4) 

但是我想用更高的分辨率进行插值,所以我使用filled.contour()来创建这个地图:

map 2 using filled.contours()

如您所见,地图和原始数据点未正确绘图....如何修复此问题?我有一种感觉,因为fill.contour()图不是地理参考的(所以不在与地图和数据点相同的坐标系中)......但我该如何改变呢?

第二张地图的代码:

df <-read.table("Petra_phytoplankton+POM_xydata_minusNAs_noduplicates.txt",header=T)
attach(df)
names(df)
fld <- with(df, interp(x = longitude, y = latitude, z = d13C))

filled.contour.ungeoreferenced<-(filled.contour(x = fld$x,
                           y = fld$y,
                           z = fld$z,
                           color.palette =
                             colorRampPalette(c("blue", "green","yellow","orange","red")),
                           xlab = "Longitude",
                           ylab = "Latitude",
                           key.title = title(main = "d13C", cex.main = 1)))

map(add=TRUE, fill=TRUE)

points(samps_test$longitude,samps_test$latitude, pch=4) #not plotting in the same space

我也尝试使用geom_tile在ggplot中创建此图,但它不起作用?

另外,我意识到这可能是另一个问题,但目前我不知道如何更改轴标题等,因为它似乎没有绘制基础图包,所以正常命令不要工作。

这里的FYI是我的数据集的一个子集:

latitude    longitude   d13C
-65 -70 -27.7
-61 150 -32.2
-61 150 -28.3
-60 116 -26.8
-60 116 -24.7
-47 38  -24.8
-38 150 -20.5
19  -65.7   -19.9
19  -65.5   -18.5
18  -60.7   -20
18  -58.5   -18.2
18  -57.8   -19
17  -55.4   -18.6
17  -50.8   -18
17  -47.1   -18.3
17  -45.5   -19.4
16  -43.3   -17.9
15  -40.7   -18.5
14  -39.3   -19.9
12  -36.7   -19.9
12  -36.2   -19.9
11  -34.4   -19.2
10  -32 -18.5
9   -30.3   -19.3
8   -29.2   -19.4
7   -26.6   -18.2
7   -25.5   -19.3
6   23.9    -20
3   -21.3   -20.4

我查看了这些帮助论坛,但他们没有告诉我如何将我的数据点或地图转换为与filled.contour相同的缩放比例。 Plotting a box within filled.contour plots in R?

Adding points to filled.contour function in R

0 个答案:

没有答案