Просто закажите ваши данные в первую очередь.Для лучшего контроля положения легенды сделайте это отдельно.
Пример
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
.