График R с заливкой - PullRequest
0 голосов
/ 05 мая 2020

Я пытаюсь создать гистограмму, используя заливку, чтобы показать несколько значений в одной полосе. Я могу получить итоги (значение y) для значения x, но когда я пытаюсь fill, я просто получаю счет.

Допустим, данные примера - это фрейм данных с именем data:

State           Num.Class   Num.Tweets
Pennsylvania    C           98
Pennsylvania    P           10
Pennsylvania    E           174
Pennsylvania    S           70
Texas           C           233
Texas           P           42
Texas           E           30
Texas           S           26
California      C           57
California      P           32
California      E           39
California      S           20
Massachusetts   C           23
Massachusetts   P           74
Massachusetts   E           1
Massachusetts   S           3

Используя ggplot, я могу получить итоги:

ggplot(data) + aes(x=State, y = Num.Tweets) + geom_col()

enter image description here

Когда я пробую fill ing с gf_bar или ggplot() + geom_bar Я получаю это вместо четырех отсчетов в одной строке:

gf_bar(~ State, fill =~ Num.Tweets, data = data)

# or
ggplot()+
     geom_bar(aes(x = data$Num.Class, fill = data$Num.Tweets), color = "black" , position = "stack", show.legend = FALSE)

enter image description here

Я смотрел этот пост и другие , но я не вижу, что мне не хватает. Если я перемещаю переменные, я получаю ошибку или ничего не выводлю.

Например:

gf_bar(Num.Tweets ~ State, fill =~ Num.Class, data = data)

возвращает ошибку Error: stat_count() must not be used with a y aesthetic..

1 Ответ

0 голосов
/ 05 мая 2020

Это то, что вы ищете?

library(ggplot2)
ggplot(data, aes(x=State, y = Num.Tweets, fill = Num.Class)) +
  geom_bar(stat = "identity")

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...