3

dataframe から、樹形図をdata.main次のように生成できます。hclust

aa1<- c(2,4,6,8)
bb1<- c(1,3,7,11)
aa2<-c(3,6,9,12)
bb2<-c(3,5,7,9)
data.main<- data.frame(aa1,bb1,aa2,bb2)
d1<-dist(t(data.main))
hcl1<- hclust(d1)
plot(hcl1)

さらに、木のカットオフを使用して枝や葉に色を付ける方法があることも知っています。ただし、部分的な列名または列番号に基づいて色を付けることは可能ですか (たとえば、に対応するブランチをaa1赤くaa2bb1青くbb2したい)?

R パッケージを確認しましたdendextendが、目的の結果を得るための直接的/簡単な方法をまだ見つけることができません。

<code>aa2</code> と <code>bb2</code> が最も密集している樹形図。 <code>bb1</code> が次に近く、<code>aa1</code> がそれに続きます。 ラベルと枝は、ラベルに基づいて色分けされています。 で始まるもの

4

3 に答える 3

3

hclust オブジェクトよりもデンドログラムの色を変更する方が簡単ですが、変換するのは非常に簡単です。できるよ

drg1 <- dendrapply(as.dendrogram(hcl1, hang=.1), function(n){
  if(is.leaf(n)){
    labelCol <- c(a="red", b="blue")[substr(attr(n,"label"),1,1)];
    attr(n, "nodePar") <- list(pch = NA, lab.col = labelCol);
    attr(n, "edgePar") <- list(col = labelCol); # to color branch as well
  }
  n;
});
plot(drg1)

どれが描くか

ここに画像の説明を入力

于 2015-05-06T17:24:05.460 に答える