Участок с уложенным барплотом - исправлено - PullRequest
0 голосов
/ 04 мая 2018

У меня есть 4 фрейма данных, каждый из которых имеет столбец с результатами, показывающий выигрыши, ничьи, проигрыши. Я хотел бы создать слоистую гистограмму, как показано на рисунке ниже. Любая идея, если это достижимо в R?

enter image description here

Вот с чем я играл:

ggplot(results, aes(x = Country, y = ??)) + 


 geom_bar(aes(fill = Performance), stat = "identity")

Проблема в том, что я не знаю, как установить ось y. Это должны быть цифры

Еще один вариант, который я попробовал, и это почти то, что я хочу, это:

counts <- table(results$Performance, results$Country)
barplot(counts, main="Game Count per Football Team",
        xlab="Football Teams", ylab = "Game Count", col=c("darkblue","red", "Yellow"),
        legend = rownames(counts))

Хотя ось у останавливается на 800, хотя у меня максимум 908 наблюдений в одной из стран

1 Ответ

0 голосов
/ 04 мая 2018

Хорошо, я могу дать вам некоторый код, который покажет вам, как вы могли бы сделать это. Вы просто хотели бы четыре различных geom_bar заявления.

Для демонстрации я создам два разных фрейма данных из набора данных mpg, который поставляется с пакетом ggplot2, поскольку вы не предоставили никаких данных.

library(tidyverse)

# I'm making two different data frames from the
# 'mpg' dataset, which comes with the ggplot package
mpg$year = as.character(mpg$year)
df1 = filter(mpg, year == "1999")
df2 = filter(mpg, year == "2008")

plot = ggplot() +
  geom_bar(data=df1
           , aes(x = year, y = hwy, fill = manufacturer)
           , stat = "identity") +
  geom_bar(data=df2
           , aes(x = year, y = hwy, fill = manufacturer)
           , stat = "identity")

print(plot)

enter image description here

...