0

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)

結果は次のようになります。

ここに画像の説明を入力

splot 関数でわかるように、パラメーター at には値 c(fivenum(gwr.res$SDF$Unempl)) が与えられます。これは、gwr の値の最小、第 1 四分位、中央値、第 3 四分位、最大に対応します。 res$SDF$Unempl. グラフを見ると、色がこのパーティションを 4 つのクラスに分けていることがわかります (引数 cuts = 4 at = c(fivenum(gwr.res$SDF$Unempl)) を使用)。

私がやりたいことは、サイドバーをパレットで編集し、6,4,2,0,-2 を c(fivenum(gwr.res$SDF$Unempl)) の値に置き換えて追加することです。

-2.427、-0.916、-0。6.706、-0.494、7.566

4

1 に答える 1

1

それが機能するコードです:

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。

于 2015-09-02T16:46:57.230 に答える