[英]How to edit the palette bar in the R function spplot?
我正在使用R包GWmodel。 在繪制GWR的輸出時,我發現自己無法在ssplot函數中編輯側欄。
我正在使用的幾行代碼(數據已經在包中)就足夠了。 您只需要安裝GWmodel庫:
library(GWmodel)
data("DubVoter")
bw.gwr.1 <- bw.gwr(GenEl2004 ~ DiffAdd + LARent + SC1 + Unempl + LowEduc + Age18_24 + Age25_44 + Age45_64, data = Dub.voter, approach = "CV", kernel = "gaussian", adaptive = FALSE)
gwr.res <- gwr.basic(GenEl2004 ~ DiffAdd + LARent + SC1 + Unempl + LowEduc + Age18_24 + Age25_44 + Age45_64, data = Dub.voter, bw = bw.gwr.1, kernel = "gaussian", adaptive = FALSE, F123.test = TRUE)
Greens <- c("#238B45","#74C476","#BAE4B3","#EDF8E9")
spplot(gwr.res$SDF, "Unempl", cuts = 4, at = c(fivenum(gwr.res$SDF$Unempl)), col.regions = Greens)
結果看起來像:
如您在spplot函數中看到的,參數at的值為c(fivenum(gwr.res $ SDF $ Unempl)),該值對應於gwr中的最小值,第一四分位數,中位數,第三四分位數。 res $ SDF $ Unempl。 查看該圖,我們可以看到顏色將分區分為4類(使用cuts = 4 at = c(fivenum(gwr.res $ SDF $ Unempl)的參數))。
我想做的是用調色板編輯側欄,並用c(fivenum(gwr.res $ SDF $ Unempl))中的值添加替換6,4,2,0,-2,它們是:
-2.427,-0.916,-0。 6.706,-0.494、7.566
那是起作用的代碼:
labelat = fivenum(gwr.res$SDF$Unempl)
labeltext = labelat
spplot(gwr.res$SDF, "Unempl", cuts = 4, at = c(fivenum(gwr.res$SDF$Unempl)), col.regions = Greens,
colorkey=list(width=0.3,
space="right",
tick.number=5,
labels=list(
at=labelat,
labels=labeltext )))
請注意,側欄上的值不同於-2.427,-0.916和-0。 6.706,-0.494、7.566,因為數據不同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.