以径向格式显示集群
display clusters in radial format
我有一个集群列表,可以说是从集群 1 到集群 3;随着
他们的成员资格如下。我想以径向格式显示集群。我正在考虑使用 as.phylo 函数
在 ape 包中显示它,但这需要创建一个 hclust object.If 任何人都知道如何做到这一点,非常感谢创建一个 hclust 对象或其他方式。
非常感谢!
cl var numberOfCluster
1 a 1
1 b 1
1 c 1
1 d 1
1 a 2
1 b 2
2 c 2
2 d 2
3 a 3
1 b 3
2 c 3
2 d 3
非常感谢!
(这是我对 a similar question from "crossvalidated" 的回答的副本)
假设您可以创建 hclust(从可以定义距离度量的变量)- 然后可以通过组合两个新包来完成:circlize 和 dendextend。
可以使用 circlize_dendrogram 函数制作绘图(允许对 plot.phylo 函数的 "fan" 布局进行更精确的控制)。
# install.packages("dendextend")
# install.packages("circlize")
library(dendextend)
library(circlize)
# create a dendrogram
hc <- hclust(dist(datasets::mtcars))
dend <- as.dendrogram(hc)
# modify the dendrogram to have some colors in the branches and labels
dend <- dend %>%
color_branches(k=4) %>%
color_labels
# plot the radial plot
par(mar = rep(0,4))
# circlize_dendrogram(dend, dend_track_height = 0.8)
circlize_dendrogram(dend, labels_track_height = NA, dend_track_height = .4)
我有一个集群列表,可以说是从集群 1 到集群 3;随着 他们的成员资格如下。我想以径向格式显示集群。我正在考虑使用 as.phylo 函数 在 ape 包中显示它,但这需要创建一个 hclust object.If 任何人都知道如何做到这一点,非常感谢创建一个 hclust 对象或其他方式。
非常感谢!
cl var numberOfCluster
1 a 1
1 b 1
1 c 1
1 d 1
1 a 2
1 b 2
2 c 2
2 d 2
3 a 3
1 b 3
2 c 3
2 d 3
非常感谢!
(这是我对 a similar question from "crossvalidated" 的回答的副本)
假设您可以创建 hclust(从可以定义距离度量的变量)- 然后可以通过组合两个新包来完成:circlize 和 dendextend。
可以使用 circlize_dendrogram 函数制作绘图(允许对 plot.phylo 函数的 "fan" 布局进行更精确的控制)。
# install.packages("dendextend")
# install.packages("circlize")
library(dendextend)
library(circlize)
# create a dendrogram
hc <- hclust(dist(datasets::mtcars))
dend <- as.dendrogram(hc)
# modify the dendrogram to have some colors in the branches and labels
dend <- dend %>%
color_branches(k=4) %>%
color_labels
# plot the radial plot
par(mar = rep(0,4))
# circlize_dendrogram(dend, dend_track_height = 0.8)
circlize_dendrogram(dend, labels_track_height = NA, dend_track_height = .4)