デンドログラムにクラスターのラベルを追加する方法はありますか?簡単な例を参照してください。デンドログラム内のクラスターラベル
hc = hclust(dist(mtcars))
plot(hc, hang = -1)
rect.hclust(hc, k = 3, border = "red")
所望の出力は次のようになります。任意の提案のための
感謝を!
デンドログラムにクラスターのラベルを追加する方法はありますか?簡単な例を参照してください。デンドログラム内のクラスターラベル
hc = hclust(dist(mtcars))
plot(hc, hang = -1)
rect.hclust(hc, k = 3, border = "red")
所望の出力は次のようになります。任意の提案のための
感謝を!
あなたのクラスタのラベルを置く場所の座標を取得する必要があります:
まず軸:
をあなたはrect.hclust
を呼び出しているとして、あなたはそれを使用することができますので、あなたにも結果を割り当てることができます
:クラスタの先頭を見つける(最初のものは、等最初の1つの+長さ、
rh <- rect.hclust(hc, k = 3, border = "red")
beg_clus <- head(cumsum(c(1, lengths(rh))), -1)
第2の軸に1から2回目を開始しますあなたは、あなたがk-1のクラスタを持つ高さの真ん中にあり、k個のクラスタを持つ高さの赤い四角形の上になりたいだけです。あなたが代わりに1/2の距離の4/5を目指しているとしましょう:
ラベルを置くy_clus <- weighted.mean(rev(hc$height)[2:3], c(4, 1))
:
text(x=beg_clus, y=y_clus, col="red", labels=LETTERS[1:3], font=2)
テキストラベルを追加する代わりにクラスタラベルを扱うmjcgraphics
パッケージに含まれています。 https://github.com/drmjc/mjcgraphicsとhttps://rdrr.io/github/drmjc/mjcgraphics/man/rect.hclust.labels.html
rect.hclust.labels(hc, k=3, border = 1) # adds labels to clusters