#r #ggplot2
#r #ggplot2
Вопрос:
Я возился с столбчатой диаграммой с накоплением, которую я не могу отсортировать от самой высокой до самой короткой. Вот диаграмма, которая у меня есть в настоящее время.
столбчатая диаграмма с накоплением
Код, который я использую, приведен ниже:
ggplot(df7, aes(
x = reorder(cause, failures) ,
y = failures,
fill = factor(
part_number,
levels = c(
"UNKNOWN",
"3766453",
"20R7920",
"3966006",
"3976397",
"20R7916",
"20R7915"
)
)
))
geom_bar(
position = "stack",
stat = "identity",
width = 0.7,
alpha = 0.75,
color = 'black'
)
theme_minimal()
xlab('')
ylab('Failures')
labs(fill = "Part Number")
scale_fill_brewer(palette = "Dark2")
coord_flip()
Кто-нибудь понимает, почему диаграмма сортируется неправильно? Спасибо и приветствия!
Комментарии:
1. Пожалуйста, добавьте
df7
или пример его,dput(df7)
чтобы воспроизвести вашу проблему!2. Я добавил ссылку на набор данных df7.
3. По умолчанию
reorder
используетсяFUN=mean
. Попробуйтеreorder(cause, failures, FUN=sum)
Ответ №1:
reorder
является общей функцией для переупорядочения факторов. По умолчанию он переупорядочивает по среднему значению. По умолчанию reorder
используется функция ‘mean’ ( FUN = mean
по умолчанию) для изменения порядка коэффициентов. Установка аргумента FUN sum
в значение reorder приведет к сортировке столбцов с накоплением по общей сумме компонентов для каждого столбца.
Раздел кода «Изменить порядок» должен быть заменен следующим:
reorder(cause, failures, FUN=sum)
Комментарии:
1. Добро пожаловать в Stackoverflow, ваш ответ может быть полезен для OP, но вы можете улучшить его, объяснив вещи.
2. Спасибо за обратную связь. Я добавляю больше информации к решению. Приветствия!