-1
我通過使用函數hclust進行聚類,現在我想繪製每個簇周圍的多邊形!在hclust的簇周圍繪製多邊形
我該怎麼做?我只有一組具有集羣ID的點!
例如這個圖像有兩個類和4個不同的區域!我如何獲得這些區域的數量?
我通過使用函數hclust進行聚類,現在我想繪製每個簇周圍的多邊形!在hclust的簇周圍繪製多邊形
我該怎麼做?我只有一組具有集羣ID的點!
例如這個圖像有兩個類和4個不同的區域!我如何獲得這些區域的數量?
您可以使用凸包函數chull
來執行此操作。
## First part sets up problem
library(cluster) ## For Ruspinin data
Rusp_HC = hclust(dist(ruspini))
Cluster4 = cutree(Rusp_HC, 4)
plot(ruspini, pch=20, col=rainbow(4)[Cluster4])
## Now get the polygons
for(i in 1:4) {
ConvexHull = chull(ruspini[Cluster4 == i, ])
polygon(ruspini[Cluster4 == i, ][ConvexHull,],
border=rainbow(4)[i], col=rainbow(4, alpha=0.1)[i])
}
謝謝您的回答!我試過這個,但是我的數據出錯了!我應該提到,例如,我有兩個數據點,分別是集羣1,集羣3,集羣2等等!我得到這個錯誤; ruspini中的錯誤[Cluster4 == i,] [ConvexHull,]: 維數不正確 –
@OumbiaAsadian您需要用您的數據替換Ruspini數據。我只是以此爲例。 – G5W
是的,我當然替換了我的數據!但我的數據出現這個錯誤! :/ –