Я создаю столбчатую диаграмму с накоплением, показывающую самые частые слова человека. Мне удалось сложить все токены, используя накопленную сумму, однако у меня есть две проблемы:
цвет не связан с текстом в гистограмме для Дона, и я делаю Не знаю, почему это происходит, потому что для Анны я получаю правильную связь между запасом слов и цветом.
Первое слово в колонке Анны - эмодзи. Это отображается в моем фрейме данных как эмодзи, но не в ggplot. Есть идеи о том, как сделать ggplot способным показывать смайлики?
Это подмножество моего набора данных:
structure(list(person = c("Don", "Anna", "Anna", "Anna", "Anna",
"Don", "Anna", "Don", "Don", "Don"), tokens = c("hey", "\U0001f44d\U0001f3fc",
"im", "yeh", "xx", "https", "guys", "yeah", "guys", "im"), n = c(13L,
14L, 17L, 17L, 18L, 21L, 22L, 22L, 27L, 32L), freq = c(0.00727476217123671,
0.0149413020277481, 0.0181430096051227, 0.0181430096051227, 0.0192102454642476,
0.0117515388919978, 0.0234791889007471, 0.0123111359820929, 0.0151091214325686,
0.0179071068830442), cumcount = c(13L, 14L, 31L, 48L, 66L, 34L,
88L, 56L, 83L, 115L)), class = c("tbl_df", "tbl", "data.frame"
), row.names = c(NA, -10L))
это код:
plot2 %>%
dplyr::filter(grepl("Anna|Don", person)) %>%
group_by(person) %>%
arrange(n) %>%
top_n(5,n) %>%
mutate(cumcount=cumsum(n)) %>%
ungroup() %>%
ggplot(aes(x=person, y=n, fill=tokens, color=factor(tokens))) +
geom_col() +
geom_text(aes(y=cumcount, label=tokens), vjust=1.6, color="black", size=2.5)
theme_minimal() +
theme(legend.position="none")
plot2
![enter image description here](https://i.stack.imgur.com/GSBht.png)