プロットや凡例に正しい色の範囲に問題があります。凡例の範囲と配色でのspplotの問題
これは私が使用するコードである:https://www.sendspace.com/file/hjtatp(通常はそれウェイト57メガバイトbeacuse圧縮)
hereからマップ(しかしマップは、二次優先され、その:ここ
data.ch4 <- read.csv2("v42_CH4_1970_TOT.txt",skip = 3,stringsAsFactors = FALSE, header = F)
num_data <- data.frame(data.matrix(data.ch4))
library(maptools)
library(lattice)
library(png)
#map loading
map1 <- readShapePoly("CNTR_2014_03M_SH/Data/CNTR_RG_03M_2014.shp")
coordinates(num_data) <- ~V2+V1
gridded(num_data) <- TRUE
#plotting
png(file="Map2.png",width=35,height=30,unit="cm", res=200, type = "cairo")
spplot(num_data["V3"], xlim=c(-5,35), ylim=c(35,70),
sp.layout = list("sp.polygons",map1),contour=F)
dev.off()
データのファイルでありますスキップすることができます)
すべてが青です。明らかに、最小値から最大値までの大きなスケール距離があります。私はスケールを修正したいと思います。最後の値は「xより大きい」でしょう。私はこのようにこれを実行しようとした:
だから今、これは非常に良く見えます。これは私がそれを行った方法です:
#Fixed breakpoints (?)
at <- c(0e+0, 1.5e-5, 1.0e-4, 1.0e-3, 1.0e-2, 1.0e-1, 1.0e+0, 2.0e+0, 1.0e+1, 1.0e+2, 2.0e+2,5.0e+2)
spplot(num_data["V3"], xlim=c(-5,35), ylim=c(35,70),
sp.layout = list("sp.polygons",map1),
contour=F,
at=at) #right there
私は手動で(正確な縮尺ではなく)値を追加しました。すべてがもっとよく見えますが、
右から見ると、均一な分布ではありません。私は青紫色、オレンジ色と黄色だけを見ることはできません。
また、ここでは値が最も高いので、地図上のいくつかのスポットは明るい黄色(ドイツ地域)ですが、悲しいことに、そのような色はスケールにはありません。
おそらく私はそれを正しくしなかったでしょう。私はスケールを良く見えるように設定する方法を知らない。私は追加することによって、これを達成
:
spplot(num_data["V3"], xlim=c(-5,35), ylim=c(35,70),
sp.layout = list("sp.polygons",map1),
contour=F,at=at,
colorkey=list(at=seq(0, 400, 30)) #right there
)
をしかし、再び、これはそれが動作しません、ちょうど偽の規模である私は、このような規模を持っていると思います。
また、2番目に速い疑問:spplottedデータの上に国の輪郭を追加する方法は?今では輪郭がカラフルなデータの下に埋め込まれているので、:
すごいです!これはまさに私が必要としていたものです!ありがとうございました:) – Karmel
もう一つ、濃い青色から黄色から赤色(青 - 黄 - 赤)までのスケールの色を作ることは可能ですか?私はレインボースキーマについて考えていましたが、私は緑色 - 赤色または青色 - ピンク - 赤色のみを使用できます – Karmel
@Karmel; 'spplot(...、col.regions = colorRampPalette(c(" blue "、" yellow "、" red "))、...)'はあなたが望むものです。 – cuttlefish44