2013-11-04 75 views
2

我正在使用corplot創建相關熱圖,但我不喜歡默認圖例 - 它太大了。
所以我試圖在創建繪圖之後使用colorlegend()添加圖例(並使用cl.pos =「n」禁用默認圖例)。
唯一的問題是,我不知道如何改變圖例的位置..它結束了左下角.. 理想情況下,我可以把它放在右上角,但我通過選項colorlegend和情節,並不能解決這個問題。如何在圖形中放置colorlegend(corrplot)

例如:

# load libraries and create color scale 
library(corrplot) 
library(RColorBrewer) 
scalebluered <- colorRampPalette(brewer.pal(8, "RdBu"))(8) 

# get data into correlation matrix 
data(mtcars) 
cars.matrix <- as.matrix(mtcars[c(2:8)]) 
cars.corr <- cor(cars.matrix) 

# plot it 
corrplot(cars.corr, method="shade", shade.col=NA, tl.col="black", 
     tl.srt=45, addgrid.col="black", type="lower", diag=FALSE, cl.pos="n") 

# add legend 
colorlegend(scalebluered, c(seq(-1,1,.25)), align="l", vertical=TRUE, addlabels=TRUE) 

輸出: screenshot of output with badly placed legend http://i42.tinypic.com/14wsqc0.png

回答

1

幾個月後,我重溫這一點,並弄清楚..只是添加XLIM和ylim定義傳說的尺寸..超級簡單!

colorlegend(xlim=c(10,15), ylim=c(10,15), scalebluered, c(seq(-1,1,.25)), align="l", vertical=TRUE, addlabels=TRUE) 
0

這樣?改變cl.pos="n" to "r"

corrplot(cars.corr, method="shade", shade.col=NA, tl.col="black", 
     tl.srt=45, addgrid.col="black", type="lower", diag=FALSE, cl.pos="r") 
+0

不完全是因爲默認圖例與相關網格一樣高。我想要一個更小的..以及將它放置在我想要的位置的能力。理想情況下,如下所示:http://i44.tinypic.com/350qssm.png – Paul