Построение растра с порогами в R - PullRequest
0 голосов
/ 24 мая 2018

Я хочу построить данные о населении.Данные являются растровыми данными.На карте должны быть красные области, где проживает менее 1 человека, и другой цвет для областей с более чем одним человеком.Если я просто использую функцию plot(), я не смогу ее достичь.Мои данные получены от: http://sedac.ciesin.columbia.edu/data/set/gpw-v4-population-count-rev10 Есть идеи, как решить проблему?

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Есть много подобных вопросов и много ответов, но, возможно, эти 2 варианта могут помочь.

library(raster)

## Create random raster
spg <- data.frame( x = rep( 0:1, each=2 ),
                  y = rep( 0:1,  2),
                  l = c(0.8,1,1.1,100));
coordinates(spg) <- ~ x + y
gridded(spg) <- TRUE
rasterDF <- raster(spg)

## Assign values, based on your condition
values(rasterDF) <- as.numeric(values(rasterDF) >= 1)

## Create a Color Function
cpal <- colorRampPalette(c("red", "blue"))

## Plot with raster-package
plot(rasterDF, col=cpal(2))

## Plot with rasterVis package
library(rasterVis)
r2 <- ratify(rasterDF)
levelplot(r2, col.regions=cpal, att='ID')
0 голосов
/ 24 мая 2018

Как насчет этого:

library(raster)

myColorRamp <- colorRampPalette(c("red", "blue"))

popRaster <- raster("path/to/my/raster")

values(popRaster) <- as.numeric(values(popRaster) >= 1)

plot(popRaster, col=myColorRamp(2))

Вам необходимо установить пакет raster, который, как я считаю, имеет в качестве зависимости пакет sp (и, возможно, rgdal).

...