2017-06-29 73 views
0

我一直在閱讀文檔,但沒有得到任何問題。在R中創建並顯示傳單的柵格

我有一個三列數據框。前兩個是gps座標,[如42.06,-70.19(美國馬薩諸塞州,Provincetown)],第三列是每個座標的值。

該數據幀被稱爲forRaster

這是我到目前爲止有:

library(raster) 
library(leaflet) 
library(rgdal) 

needsRaster = rasterFromXYZ(forRaster) 
plot(needsRaster) 
needsImage = image(needsRaster) 
needsLeafletRaster = projectRasterForLeaflet(needsImage) 

needsMap = leaflet() 
addRasterImage(needsMap, needsLeafletRaster) 
needsMap 

但我不斷收到此錯誤projectRasterForLeaflet調用後: Error in raster::projectRaster(x, raster::projectExtent(x, crs = sp::CRS(epsg3857))) : input projection is NA

我找到單張文檔不完全直接,並且想知道是否有人幫助。如果我需要以任何方式製作不同的柵格,我很樂意這樣做。謝謝。

回答

0

我想通了!

# Made a new data frame with lat, long, and the value 
df = data.frame(value = v, lng = y, lat = x) 

#Did this.... 
s = SpatialPixelsDataFrame(df[,c('lng', 'lat')], data = df) 
crs(s) = sp::CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs") 

r = raster(s) 

# Set up the colors 
val = as.numeric(c(0:max(df$value))) 
pal = colorNumeric(c("yellow", "orange", "red"), val, 
       na.color = "transparent") 

# Made the map 
leaflet() %>% addProviderTiles("CartoDB.Positron") %>% 
    addRasterImage(r, colors = pal, opacity = 0.5) %>% 
    addLegend(pal = pal, values = val, title = "Number of Needs") 
相關問題