Это то, что вы ищете?
ДАННЫЕ :
df <- data.frame(Colour = c("Black", "Black", "White", "Black", "White", "White"),
Year = c(1996, 2019, 1996, 1996,2019, 1996),
DateClass = c("A", "B", "A", "C", "B", "B"))
РЕДАКТИРОВАННОЕ РЕШЕНИЕ :
Первая агрегировать данные для получения пропорций Colour
на DateClass
в подмножествах или df
на Year==2019
и, соответственно, Year==2019
; сохранить результаты в df1996
и df2019
:
df1996 <- aggregate(
x = df$DateClass[df$Year==1996],
by = list(df$Colour[df$Year==1996]),
function(x) prop.table(table(x)))
df2019 <- aggregate(
x = df$DateClass[df$Year==2019],
by = list(df$Colour[df$Year==2019]),
function(x) prop.table(table(x)))
Теперь расположите два кадра данных рядом друг с другом, используя двухпанельный макет:
par(mfrow = c(1,2))
barplot(df1996[,-1], cex.names = 0.8, col = c("blue","red"),
main = "Black/White by DateClass in 1996", cex.main = 0.8,
xlab = "1996", ylab = "Proportions")
barplot(df2019[,-1], cex.names = 0.8, col = c("blue","red"),
main = "Black/White by DateClass in 2019", cex.main = 0.8,
xlab = "2019", ylab = "Proportions")