У меня есть набор данных с четырьмя переменными, измеряющими точку зрения респондентов по различным темам. Я хочу нанести их на одну столбчатую диаграмму с накоплением, чтобы вы могли сравнить значения по разным темам.
Это первые строки набора данных:
lebanon <- structure(list(climate_change = c(
"Not a very serious problem",
"Not a very serious problem", NA, NA, "A very serious problem",
"A somewhat serious problem"
), air_quality = c(
"A somewhat serious problem",
"Not a very serious problem", NA, NA, "A very serious problem",
"A very serious problem"
), water_polution = c(
"A somewhat serious problem",
"Not a very serious problem", NA, NA, "A very serious problem",
"Not at all a serious problem"
), trash = c(
"A very serious problem",
"Not a very serious problem", NA, NA, "A very serious problem",
"A somewhat serious problem"
)), row.names = c(NA, -6L), class = "data.frame")
Я пробовал использовать следующий код основан на этом сайте :
lebanon %>%
filter(!is.na(climate_change), !is.na(air_quality), !is.na(water_polution), !is.na(trash)) %>%
gather(variable, value, climate_change:trash) %>%
ggplot(aes(x = variable, y = value, fill = value)) +
geom_bar(stat = "identity") +
coord_flip()
Получение этого графика:
Есть три проблемы с этим графиком.
1.) Гистограммы имеют разную длину.
2.) Я не понимаю, почему что-то написано в том месте, где ось x пересекает ось y. Как мне удалить это?
3.) Я хочу упорядочить значения, чтобы они имели смысл, поэтому я упорядочиваю их раньше:
dataset$climate_change <- factor(dataset$climate_change, levels = c("Not at all a serious problem",
"Not a very serious problem",
"A somewhat serious problem",
"A very serious problem"))
dataset$air_quality <- factor(dataset$air_quality, levels = c("Not at all a serious problem",
"Not a very serious problem",
"A somewhat serious problem",
"A very serious problem"))
dataset$water_polution <- factor(dataset$water_polution, levels = c("Not at all a serious problem",
"Not a very serious problem",
"A somewhat serious problem",
"A very serious problem"))
Однако значения все еще неупорядочены. Что я делаю не так? Или есть более эффективный способ сделать столбчатую диаграмму с несколькими накоплениями?