如何更改分组条形图的顺序?

How to change the order of grouped barplots?

如何将条形图按照从极低到极高和人为的正确顺序排列? 我怎样才能改变图例的位置?

这是我的 R 代码:

barplot(bartab, col=colors()[c(23, 89)], beside=TRUE, legend=rownames(bartab))

首先订购您的数据。为了更好地控制图例位置,请单独制作。

示例

df1 <- mtcars[grep("^Merc", rownames(mtcars)), c(1, 2)]
df1 <- df1[order(df1$mpg), ]  # this orders your data by "mpg", look into `?order`

# plot
barplot(t(df1), col=c("blue", "green"), border="white", font.axis=2,
        beside=TRUE, xlab="group", font.lab=2)
legend("topleft", legend=c("mpg", "cyl"), pch=15, col=c("blue", "green"))

注:

还有其他可能的字符串来指定图例位置,如文档所述:

The location may also be specified by setting x to a single keyword from 
the list "bottomright", "bottom", "bottomleft", "left",
"topleft", "top", "topright", "right" and "center".

您还可以指定精确坐标,请参阅 ?legend