ggplot2: reordenar las barras en el diagrama de barras de mayor a menor [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Reordenar barras en geom_bar ggplot2 2 respuestas

Tengo esta figura

Siguiendo la respuesta depregunta similar

library(ggplot2)
library(egg)

mydf <- transform(mydf, variables = reorder(variables, VIP, decreasing = T))

p1 <- 
  ggplot(mydf, aes(x = variables, y = VIP, group =1))+
  geom_bar(stat="identity") +
  geom_hline(yintercept = 1, size = 2, linetype = 3) +
  theme(axis.title.x =element_blank())
p2 <-
  ggplot(mydf, aes(x = variables, y = coefficient, group =1))+
  geom_point()+
  geom_line()+
  geom_hline(yintercept = 0, size = 2, linetype = 3) 

grid.draw(egg::ggarrange(p1,p2 , ncol=1))

Mi objetivo era ordenar las barras de mayor a menor.

Aunque, clasifiqué elvariables and VIP de mayor a menor, las barras se ordenaron de menor a mayor.

¿Alguna idea de qué salió mal e hizo que las barras se clasificaran de menor a mayor?

Datos

mydf <- read.table(text = c("
variables   VIP coefficient
diesel  0.705321    0.19968224
twodoors    1.2947119   0.3387236
sportsstyle 0.8406462   -0.25861398
wheelbase   1.3775179   -0.42541873
length  0.8660376   0.09322408
width   0.8202489   0.27762277
height  1.0140934   -0.12334574
curbweight  0.996365    -0.29504266
enginesize  0.8601269   -0.25321317
horsepower  0.7093094   0.16587358
horse_per_weight    1.2389938   0.43380122"), header = T)

Respuestas a la pregunta(1)

Su respuesta a la pregunta