R でいくつかのデータを使用して空間補間を実行し、マップの作成に行き詰まりました。そのためにはspplotを使用する必要があります。そこからコードサンプルをテストすると:
data(meuse)
coordinates(meuse) <- ~x+y
l2 = list("SpatialPolygonsRescale", layout.north.arrow(), offset =
c(181300,329800), scale = 400)
l3 = list("SpatialPolygonsRescale", layout.scale.bar(), offset =
c(180500,329800), scale = 500, fill=c("transparent","black"))
l4 = list("sp.text", c(180500,329900), "0")
l5 = list("sp.text", c(181000,329900), "500 m")
spplot(meuse, c("ffreq"), sp.layout=list(l2,l3,l4,l5),
col.regions= "black", pch=c(1,2,3),
key.space=list(x=0.1,y=.95,corner=c(0,1)))
すべてが意図したとおりに機能します。これをデータセットに適用すると、エラーが発生します
Error in printFunction(x, ...) :
(list) object cannot be coerced to type 'double'
これは私のコードがどのように見えるかです:
l2 = list("SpatialPolygonsRescale", layout.north.arrow(), offset =
c(5400000,500000), scale = 400)
l3 = list("SpatialPolygonsRescale", layout.scale.bar(), offset =
c(5400000,500000), scale = 25000, fill=c("transparent","black"))
l4 = list("sp.text", c(5400000,500000), "0")
l5 = list("sp.text", c(5400000,500000), "25 km")
# Use the ColorBrewer library for color ramps
library(RColorBrewer)
precip.pal <- colorRampPalette(brewer.pal(7, name="Blues"))
# plot the interpolation
spplot(bla.krige, zcol='bla.pred', col.regions=precip.pal,contour=TRUE,
col='black',
pretty=TRUE,
scales=list(draw = TRUE),
labels=TRUE,
layout=list(l2,l3,l4,l5))
この問題を解決する方法はありますか? 私のデータは、splot のドキュメントに記載されている例とほぼ同じに見えます。ヒントをありがとう!