Как упорядочить факторные переменные в ggplot

Я хотел бы упорядочить переменные форм-фактора роста растений по оси X, уменьшив значение наклона, а не в алфавитном порядке. Я пробовал функцию reorder(), но безуспешно.

slope = c(1.0508194, 0.9406335, 1.1271495, 1.0496251, 
          0.9874658, 0.9358822, 0.8621570, 1.0403310, 
          1.0380560, 1.0401669)

veg3 <- data.frame(plant_growth_form = as.factor(c("fern", "fern ally", "grass", "herb","herbaceous climber", "herbaceous shrub",
                                                            "tree sapling", "undet", "woody climber", "woody shrub")))

ggplot(veg3, aes(x = plant_growth_form, y = slope)) +
   geom_point(cex=2) +
   xlab("Growth form") + ylab("Slopes") + ylim(0,2) +
   theme_bw() + theme(panel.grid.major = element_blank(), 
                      panel.grid.minor = element_blank())

Подмножество воспроизводимых данных, сгенерированное с помощью dput(), можно найти по адресу: Как вычислить стандартные ошибки для прогнозируемых данных.


person tabtimm    schedule 14.10.2014    source источник


Ответы (1)


Для меня этот код с reorder() работает как положено.

ggplot(veg3, aes(x = reorder(plant_growth_form,-slope), y = slope)) +
      geom_point(cex=2) +
      xlab("Growth form") + ylab("Slopes") + ylim(0,2) +
      theme_bw() + theme(panel.grid.major = element_blank(), 
                         panel.grid.minor = element_blank())
person Didzis Elferts    schedule 14.10.2014