首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R- legend:为同一文本指定多种颜色

R- legend:为同一文本指定多种颜色
EN

Stack Overflow用户
提问于 2011-03-02 22:56:49
回答 1查看 3.3K关注 0票数 6

我有一个R条形图,它有六个条形图,每个条形图分为两部分,还有六种颜色--但有几种颜色的意思是一样的。如何将一个文本分配给图例中的几种颜色?提前感谢您的帮助!

这是该图的R代码:

代码语言:javascript
复制
height<-matrix(c(64.39173921,73.08486662,
                 64.25261321,90.70965993,
                 64.91170611,38.21450776,
                 35.60826079,26.91513338,
                 35.74738679,9.290340073,
                 35.08829389,61.78549224), 
                 nrow=2, ncol=6, byrow=TRUE,
                 dimnames=list(c("Bilateral", "Multilateral"),
                           c("GER \ntotal", "GER \nto LA", "ESP \ntotal", 
                                 "ESP \nto LA", "UK \ntotal", "UK \nto LA")))

tmp <- height
height <- matrix(0,nrow=12,ncol=6)
height[cbind(1:12,rep(1:6,each=2))] <- tmp

colnames(height) <- colnames(tmp)
rownames(height) <- rep(rownames(tmp),6)


barplot(height, beside=FALSE,
        main="Bilateral vs. Multilateral Aid 2004-8 average", 
        ylab="Percentage of aid", ylim=c(0,100),
        col=c("deepskyblue4","deepskyblue",
              "deepskyblue4","deepskyblue",
              "darkolivegreen4","darkolivegreen1",
              "darkolivegreen4","darkolivegreen1",
              "firebrick4", "firebrick1",
              "firebrick4", "firebrick1")
        )
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-02 23:06:16

您可以精确地控制图例:

代码语言:javascript
复制
legend("bottom",
       legend = c("Bilateral Aid","","","Other","",""),
       fill = c("deepskyblue4","darkolivegreen4","firebrick4","deepskyblue",
                "darkolivegreen1","firebrick1"),
       bg = "white", ncol = 2)

您需要为图例创建一些空间或将其推到绘图区域之外,但您可以控制显示哪些颜色以及它们与哪些文本相关联。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5169265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档