1
levelplot
によって生成されたカラーキーに、たとえばsp.points
レイヤのキーを追加することはできますか?レベルプロットのカラーキーにsp.pointsキーを追加
は、次の例を見てみましょう:
library(rasterVis)
library(latticeExtra)
library(sp)
r <- as.factor(raster(matrix(rbinom(100, 1, 0.5), 10)))
levels(r)[[1]] <- data.frame(ID=0:1, z=c('a', 'b'))
p <- SpatialPoints(matrix(runif(20), 10))
levelplot(r, margin=list(draw=FALSE), scales=list(draw=FALSE),
col.regions=c('white', 'gray90')) +
latticeExtra::layer(sp.points(p, pch=20, col=1))
私は、既存のカラーキーの下に、ポイントのキー入力を追加したいと思います。
場しのぎ溶液は、それが所望の位置になるまでx
とy
値を調整する、次のようにlevelplot
呼出しに鍵を追加することであるが、(1)右x
とy
値を求めることは、相互作用を必要とする、疼痛であります(2)キーを収容するために右のパディングがリサイズされず、(3)フォントサイズがカラーキーと一致するように自動的に拡大されない。
k <- list(x = 1.02, y = 0.4, corner = c(0, 0), points=list(pch=20, col=1),
text=list('foo', cex=0.9))
levelplot(r, margin=list(draw=FALSE), scales=list(draw=FALSE),
col.regions=c('white', 'gray90'), key=k) +
latticeExtra::layer(sp.points(p, pch=20, col=1))
私はlattice
グラフィックに固執する必要があると仮定すると、私は上記の問題点を克服するための最良の方法は何ですか?それはあなたが発生したすべての問題を解決していませんが
おかげでオスカー。 'p2'凡例をレベルプロットのキー(つまり、その上ではなく、その下ではなく)と一直線に並べることは可能ですか? – jbaums
'mergedTrellisLegendGrob'で' vertical'引数を試してみてください。そのデフォルト値は 'FALSE'です(この例のように)。コードを調べると、 'vertical = TRUE'で、この関数は' packGrob'を使って最初の凡例を上に、2番目の凡例を下に置くことが分かりました。多分、これはあなたが必要とするものではないでしょう。代わりに 'packGrob'の' row'と 'col'引数を使って、この関数の最後の行を再利用することができます。 –