Как уже говорили другие в комментариях, вам необходимо отфильтровать PCR14
, который больше 0, перед изменением порядка уровней факторов. Однако вам также необходимо удалить параметр data
из geom_text
, иначе все эти уровни факторов вернутся, и у вас будет большой беспорядок. Он уже немного переполнен с удаленными нулевыми уровнями.
Я думаю, вам также следует изменить vjust
на hjust
, чтобы поместить текст в более удобное положение, поскольку вы перевернули координаты с компенсацией увеличьте (перевернутый) диапазон оси Y, чтобы приспособить его:
dfcsv1 %>%
filter(PCR14 > 0) %>%
mutate(Municipio = fct_reorder(Municipio, PCR14)) %>%
ggplot(aes(x = Municipio, y = PCR14, fill = TasaPCR14)) +
geom_bar(stat = "identity", width = 0.6) +
coord_flip() +
geom_text(aes(y = PCR14,label = PCR14), hjust= -0.5) +
scale_fill_gradient(low = "steelblue", high = "red") +
ylim(c(0, 45))
Incidentally, it looks a lot better with the ones removed too:
dfcsv1 %>%
filter(PCR14 > 1) %>%
mutate(Municipio = fct_reorder(Municipio, PCR14)) %>%
ggplot(aes(x=Municipio, y=PCR14, fill =TasaPCR14)) +
geom_bar(stat="identity", width=0.6) + coord_flip() +
geom_text(aes(y=PCR14,label=PCR14),hjust=-0.5)+
scale_fill_gradient(low="steelblue", high="red") +
ylim(c(0, 45))
введите описание изображения здесь