Решение ggplot
подразумевает поворот вашего фрейма данных в более длинный формат, такой как:
library(tidyr)
library(dplyr)
library(ggplot2)
df %>% pivot_longer(-Scenerio) %>%
ggplot(aes(x = as.factor(Scenerio), y = value, fill = name))+
geom_col(position = position_dodge())
Базовое решение r с использованием barplot
подразумевает транспонирование вашего кадра данных и преобразование в виде матрицы следующим образом:
rownames(df) <- df$Scenerio
df <- t(df[,-1])
colnames(df) <- 1:9
barplot(df, beside = TRUE, legend = rownames(df),
xlab = "Scenario", ylab = "Score")
Воспроизводимый пример
structure(list(Scenerio = 1:9, Migration = c(0L, 1L, 200L, 198L,
184L, 151L, 139L, 134L, 131L), Foraged = c(741L, 740L, 475L,
215L, 118L, 52L, 31L, 21L, 14L), Counter = c(1500L, 1500L, 1349L,
832L, 616L, 412L, 343L, 304L, 278L)), row.names = c(NA, -9L), class = c("data.table",
"data.frame"))