4

10k 行と 3 列のデータ フレームがあります: xpos、ypos、およびクラスター (クラスターは 0 から 9 までの数字) です

その六角形内で最も頻度の高いクラスターに従って色付けされた各六角形を使用して、16 進数プロットを表示したいと思います。

これまでのところ、私は持っています:

 library(ggplot2)
 library(hexbin)
 ggplot(clusters, aes(x=xpos, y=ypos, z=cluster)) + stat_summary_hex(fun.x=mode)

これは私が望むものを与えていると思います(つまり、すべての六角形を0から9の色で塗りつぶしています)が、カラースケールは連続しているように見え、個別のものを使用する方法がわかりません.

出力

追加のコンテキストとして、六角形を使用して滑らかにしようとしている、データの基本的な乱雑なビューを次に示します。

 qplot(data=clusters, xpos, ypos, color=factor(cluster))

出力2

4

2 に答える 2

4

私はあなたstat_summary_hex(fun.x=mode)が何をしているのかわかりませんが、それはあなたが考えていることではないと確信しています(mode統計モードではなく、オブジェクトのストレージモードを与え、のfun.x正式な引数と一致しませんstat_summary_hex)。これを試して。各ビンの観測値を集計し、最大カウントのラベルを引き出します。

ggplot(clusters, aes(x=xpos, y=ypos, z=cluster)) + stat_summary_hex(fun = function(x) {
    tab <- table(x)
    names(tab)[which.max(tab)]
})

Hexbinned クラスター

于 2013-06-28T19:11:23.587 に答える