2015-01-05 2 views
3

R에서 Raster를 표시하기 위해 ArcGIS에서 사용하는 stretched color scheme을 복제하려고합니다. 색상 스케일의 최소/최대를 평균으로 정의하는 방법을 사용하고자합니다. raster_values) +/- 2 * sd (raster_values)로 설정하면이 범위를 벗어나는 항목은 부등식에 따라 min 또는 max의 색상으로 설정됩니다.ArcGIS는 R에서 Raster의 stretched color scheme을 좋아합니다.

한계 값 위/아래의 모든 값을 최대/최소 색상 값으로 표시하도록 R에 지시하는 방법을 모르겠습니다. 단지 셀을 채색하지 않습니다.

#Load libraries 
    library(raster) 
    library(RColorBrewer) 

#Color scale 
    bluescale = colorRampPalette(brewer.pal(9,"PuBu")) 

#Create raster and plot it 
    x = raster(matrix(rnorm(625,20,5),25,25)) 
    plot(x,col=bluescale(50),breaks=seq(mean(values(x))-2*sd(values(x)),mean(values(x))+2*sd(values(x)),length.out=51)) 

enter image description here

그것은 모든 값을 플롯되지 않습니다. 이것을 어떻게 할 수 있습니까?

답변

3

어떻게 바로 그 마지막 그룹에 대한 휴식을 확장에 대한

br <- seq(mean(values(x))-2*sd(values(x)), 
    mean(values(x))+2*sd(values(x)),length.out=51) 
br[1] <- min(values(x)); 
br[length(br)] <- max(values(x)) 
plot(x,col=bluescale(50),breaks=br) 

enter image description here