У меня есть фрейм данных с (для упрощения) судей, фильмов и рейтинги (рейтинги на 1 звезда 5 звезд масштаба):заказанные факторы в гистограмме ggplot2
d = data.frame(judge=c("alice","bob","alice"), movie=c("toy story", "inception", "inception"), rating=c(1,3,5))
Я хочу, чтобы создать гистограмма, где ось х - это количество звезд, а высота каждого бара - это количество рейтингов этой звезды.
Если я
ggplot(d, aes(rating)) + geom_bar()
это работает отлично, за исключением того, что стержни не по центру над каждой оценкой и ширина каждой полосы не является идеальной.
Если я
ggplot(d, aes(factor(rating))) + geom_bar()
то порядок числа звезд испортится на оси х. (На моем Mac, по крайней мере, по какой-то причине, упорядочение по умолчанию работает на компьютере Windows.) Вот как это выглядит:
Я попытался
ggplot(d, aes(factor(rating, ordered=T, levels=-3:3))) + geom_bar()
, но это, кажется, не Помогите.
Как я могу получить свою гистограмму, как показано на рисунке выше, но с правильным упорядочением по оси х?