簡體   English   中英

hclust之后corrplot中標簽的順序

[英]order of labels in corrplot after hclust

在我的數據集中,變量屬於不同的組,我想為每個變量分配顏色:

mycolors <- rep(NA,11)
names(mycolors) <- names(mtcars)
mycolors[1:4]   <- 'green' # mpg, cyl, disp, hp
mycolors[5:9]   <- 'red'   # drat, wt, qsec, vs, am
mycolors[10:11] <- 'blue'  # gear, carb

現在,我想構建一個相關矩陣並為標簽着色:

M <- cor(mtcars)
corrplot(M, tl.col = mycolors)

沒有命令

這可以正常工作,但是如果我使用hclust對其進行hclust ,則標簽的排列順序會不同,從而導致顏色錯誤: 在此處輸入圖片說明

如何在hclust之后hclust標簽的實際順序,以便我可以重新分配顏色? 我嘗試使用以下內容:

myclust <- hclust(dist(M))
myclust$labels[myclust$order]

這使順序與原始順序不同,但仍與corrplot中使用的順序不同...

使用此處的想法,您可以對顏色向量進行重新排序,使其符合hclust有序矩陣的順序。

ord <- corrMatOrder(M, order="hclust")
newcolours <- mycolors[ord]
newcolours
#   carb      wt      hp     cyl    disp    qsec      vs     mpg    drat      am 
# "blue"   "red" "green" "green" "green"   "red"   "red" "green"   "red"   "red" 
#   gear 
# "blue" 
corrplot(M, tl.col = newcolours, order = "hclust")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM