【发布时间】:2021-04-30 17:10:37
【问题描述】:
我有一个栅格file,已从 ArcGIS 导出为地理参考 tif 文件。 栅格将用作 mapview 中的背景地图,因为 mapview 背景层 CartoDB.Positron、CartoDB.DarkMatter、OpenStreetMap、Esri.WorldImagery 和 OpenTopoMapdont 在我需要的缩放级别上不提供所需的背景。
首先我使用 raster 包将我的光栅砖读入 R,然后使用 plotRGB 进行绘图。
library(raster)
library(mapview)
r<-brick("KYENGERA2.tif")#raster exported from Arcgis read. has 4 bands
r<-subset(r,1:3) #Retain only layers/bands with RGB
plotRGB(r, 1,2,3, stretch='lin')
然后我创建一个值为 0 - 255 的新栅格 r2,并根据 r 中的 rgb 值分配一个颜色表。我用两种不同的方式绘制它,我得到了相同的结果。
r2 <- setValues(raster(r), pct$idx-1) #create a new raster with values 0 - 255
colortable(r2) <- pct$ct #define 256 colors
plotRGB(r, 1,2,3, stretch='lin')
plot(r2)#plot(r2,col=r2@legend@colortable)
但是,当我尝试使用 mapview 时,结果并不如预期。
mapview(r2, col.regions = pct$ct,na.col="transparent")
谁能帮我用 mapview 解决这个问题? 我已经查看了this,但我无法找到解决方案。
【问题讨论】:
-
很遗憾,我们无法重现您的示例,因为我们没有
pct -
我忘记了几行 pct
标签: r r-raster r-leaflet r-mapview