17

を使用してイメージを作成したマトリックスがありimage(matrix)ます。凡例をプロットに追加するときのように、画像に色の凡例を追加する方法はありますか?

4

3 に答える 3

17

または、凡例は次のように指定できます。

     legend(grconvertX(0.5, "device"), grconvertY(1, "device"), 
     c("0",".5","1"), fill = colMap[c(1, 10, 20)], xpd = NA)

grconvertX() と grconvertY() と xpd は、凡例がプロット領域の外にあることを確認します。もっともらしい例は次のとおりです。

    nsamples <- 20
    mat <- rnorm(nsamples, .5, .15)
    dim(mat) <- c(4, 5)
    colMap <- colorRampPalette(c("red","white","blue" ))(nsamples)
    image(1:4, 1:5, mat, col = colMap, ylab="", xlab="")
    legend(grconvertX(0.5, "device"), grconvertY(1, "device"),
    c("0",".5","1"), fill = colMap[c(1, 10, 20)], xpd = NA)

ps: 古いリクエストであることは承知しており、解決済みです。しかし、私は同様の答えを探していましたが、見つけることができませんでした。私はこの問題を解決するのに苦労しているので、おそらく他の誰かがそれから利益を得ることができると思いました.

于 2016-01-12T20:02:41.673 に答える
8

imageRのはかなり基本的なプロット関数です。filled.contour凡例にスペースを自動的に割り当てる関数が必要かどうかを確認することをお勧めします。またはこれを試してください:

 library(lattice)
 levelplot(matrix)
于 2013-03-03T17:51:42.280 に答える