I have an R barplot that has six bars divided into two parts each, and six colours - but several of the colours mean the same thing. How can I assign one text to several colours in the legend? Thanks in advance for your help!!!
Here's the R code for the plot:
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")
)
You control the legend exactly:
legend("bottom",
legend = c("Bilateral Aid","","","Other","",""),
fill = c("deepskyblue4","darkolivegreen4","firebrick4","deepskyblue",
"darkolivegreen1","firebrick1"),
bg = "white", ncol = 2)
You'll need to create some space for the legend or push it outside the plotting region, but you control which colours appear and what text they are associated with.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With