R語言空間插值的幾種方法及案例應用
08-15
R語言空間插值的幾種方法及案例應用
推薦閱讀:
來自專欄 R語言中文社區
6 人贊了文章
作者簡介
勾蒙蒙,R語言資深愛好者。
個人公眾號: R語言及生態系統服務。##載入程序包library(raster)
library(sp)library(rgdal)library(gstat)library(raster)library(maptools)##設置工作空間setwd("C:/Users/lx/Desktop/sun")數據為環京津冀地區153個站點2002年7月降雨數據##讀取數據Data<-na.omit(read.csv("Data.csv",header=T))
head(Data) Month Plot Year rain X Y1 7 54365 2002 139.8 125.3500 41.283332 7 54259 2002 197.5 124.9167 42.010003 7 54493 2002 317.6 124.7833 40.716674 7 54497 2002 179.4 124.3333 40.050005 7 54351 2002 159.8 124.0833 41.916676 7 54254 2002 88.90 124.0500 42.53333製圖顯示數據plot(sort(Data$rain), ylab=" 年降雨量(mm)", las=1, xlab=站點)


dsp <- SpatialPoints(Data[,5:6], proj4string=CRS("+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0"))
dsp <- SpatialPointsDataFrame(dsp,Data)展示一個直觀的地圖cuts<-c(0,30,50,100,150,300)#設置間距blues <- colorRampPalette(c("red","blue"))(5)#設置顏色梯度,即漸變色。c("red","blue")(5)代表顏色從黃色漸變到橘色,再漸變到藍色,再到深藍色,5則代表長度為5。例子:plot(20:1, bg = blues[rank(5:1)], cex = 2, pch = 22)pols <- list("sp.polygons",bound, fill = "lightgray")#構建京津冀的SpatialPolygons對象spplot(dsp,"rain", cuts=cuts, col.regions=blues, sp.layout=pols, pch=20, cex=2)
WGS84<- CRS("+proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0")#設置參考系WGS84
dsp1<-spTransform(dsp,WGS84)#將經緯度轉成平面坐標,使用WGS參考系bound1<-spTransform(bound,WGS84) 使用鄰域多邊形插值library(dismo)v <- voronoi(dsp1)plot(v)
bound2<-aggregate(bound1)#聚合,降低解析度
v1<-intersect(v,bound2)#將兩個圖層相交spplot(v1, "rain", col.regions=rev(get_col_regions()))#繪製多邊形圖
plot(blank_raster)


res<-c(20,100,500,1000)
for(r in res){blank_raster<-raster(nrow=r,ncol=r,extent(bound))values(blank_raster)<-1bound_raster<-rasterize(bound,blank_raster)bound_raster[!(is.na(bound_raster))] <- 1plot(bound_raster,main=paste("Res: ",r,"*",r))plot(bound,add=T)}
毫無疑問,1000*1000的解析度吻合效果要更好,但也不一定越高越好,會影響處理速度,這裡我們選擇1000*1000的解析度
言歸正傳,將結果柵格化:vr <- rasterize(v1,bound_raster,"rain")plot(vr)








推薦閱讀:
※「大數據殺熟」?商家對數據的使用可能遠超出你的想像
※數據分析整體規劃---9周系統學習數據分析
※一個簡單的例子·如何使用excel進行數據分析?
※雨沐田:數據分析最牛工具之Excel
※格隆匯研究:讓Facebook成眾矢之的 這家數據分析公司什麼來頭?
