2014-07-02 173 views
0

我有一个图例,但它覆盖了barplot中的一列。图例覆盖

BOD<-matrix(c(2846,2397,4408,3563,2001,1713,4137,3197,136,107,307,203), 
      nrow = 3, byrow = T) 

colnames(BOD)<-c("BOD","BOD lọc","COD","COD lọc") 
DT <- barplot(BOD, 
       main="Do Thi BOD", 
       legend=c("<5 Nam","5-10 Nam",">10 Nam"), 
       beside = T) 

enter image description here

+0

阅读'barplot'并注意'args.legend'参数。按照“?legend”的链接,并阅读如何指定图例的绘制位置。 – joran

回答

-1

你可以使用legend("topleft", …)(假设你的问题是定位图例)。

BOD<-matrix(c(2846,2397,4408,3563,2001,1713,4137,3197,136,107,307,203), 
      nrow = 3, byrow = T) 

colnames(BOD)<-c("BOD","BOD lọc","COD","COD lọc") 
DT <- barplot(BOD,main="Do Thi BOD",beside = T) 
legend("topleft",legend=c("<5 Nam","5-10 Nam",">10 Nam")) 

这里是我的阴谋: Plot with legend topleft


编辑: 这样做的更idiomic方式将使用args.legendlegend.textbarplot本身,如

DT <- barplot(BOD, 
       main="Do Thi BOD", 
       legend.text = c("<5 Nam","5-10 Nam",">10 Nam"), 
       args.legend = list(x = "topleft"), 
       beside = T) 

enter image description here

+0

你能解决我的代码? – user3798177

+0

非常感谢你!但它失败 – user3798177

+0

对我来说,它不会失败。你至少应该给出一个错误信息。另外,图例帮助为您提供了更多信息。 – mrub