Jak uzyskać odwróconą skalę log10 w ggplot2?

Chciałbym zrobić wykres z odwróconą skalą log10 x za pomocą ggplot2:

require(ggplot2)
df <- data.frame(x=1:10, y=runif(10))
p <- ggplot(data=df, aes(x=x, y=y)) + geom_point() 

Wydaje się jednak, że mogęzarówno&nbsp;skala log10lub&nbsp;odwrócona skala:

p + scale_x_reverse() + scale_x_log10() 

p + scale_x_reverse()

Myślę, że jest to logiczne, jeśli warstwa może mieć tylko jedną skalę. I na pewno mogłem go zhakować, wykonując transformację dziennika w ramce danych,df$xLog <- log10(df$x)&nbsp;ale to rozwiązanie wydaje się sprzeczne z duchem ggplot. Czy istnieje sposób na uzyskanie tego rodzaju wykresu bez przeprowadzania transformacji danych na zewnątrz wywołania ggplot?