簡體   English   中英

使用不同的顏色在圖上繪制圖例

[英]Draw legend on a plot using different colors

x <- matrix(seq(1,10,by=0.1),ncol=5,nrow=5)
colnames(x) <- letters[1:5]
rownames(x) <- letters[6:10]
plot(hclust(t(dist(x))))

在此處輸入圖片說明

我有一個數據框:

df <- data.frame(Rows = letters[6:10],value=c("L","L","L","L","N"))
df
  Rows value
1    f     L
2    g     L
3    h     L
4    i     L
5    j     N

我想在x軸下方的上圖中繪制彩色圖例。 像行名f的值為L一樣,因此圖中位於圖例下面的圖例的部分應標記為“紅色”,同樣應將h,i,g着色,但圖中j標號以下的圖例應具有“藍色”。

它應該看起來像這樣:

在此處輸入圖片說明

我嘗試使用image.plot,但沒有得到想要的結果。 有沒有辦法做到這一點 ?

最終找到了一個解決這個問題的方法:使用text函數可以繪制結果圖

df <- data.frame(Rows = letters[6:10],value=c("L","L","L","L","N"))
x <- matrix(seq(1,10,by=0.1),ncol=5,nrow=5)
colnames(x) <- letters[1:5]
rownames(x) <- letters[6:10]
plot(hclust(t(dist(x))))
axis(1,at=seq(1,length(rownames(x)),1),labels=FALSE)
text(seq(1,length(rownames(x)),1),labels="\u2594",col=c(rep("red",2),"blue",rep("red",2)),cex=25,par("usr")[3]+0.005)
legend("topright",legend=c("L","N"),col=c("red","blue"))

文本中使用unicode“ \\ u2594”創建盒子圖像。

暫無
暫無

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

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