me gustaría hacer una parcela con una escala log10 x inversa usando ggplot2:¿Cómo obtener una escala inversa, log10 en ggplot2?
require(ggplot2)
df <- data.frame(x=1:10, y=runif(10))
p <- ggplot(data=df, aes(x=x, y=y)) + geom_point()
Sin embargo, parece que lo que pueda ya sea una escala log10 o una escala invertida:
p + scale_x_reverse() + scale_x_log10()
p + scale_x_reverse()
Supongo que esto es lógico, si una capa solo puede tener una escala. Y ciertamente podría hackearlo haciendo la transformación de registro en el marco de datos yo mismo, df$xLog <- log10(df$x)
pero esa solución es una parece contraria al espíritu de ggplot. ¿Hay alguna forma de obtener este tipo de trazado sin hacer transformaciones de datos externas a la llamada ggplot?
esperaba que esto funciona tan bien, pero parece que es un poco complicado. Hubo una [solución alternativa] (https://groups.google.com/forum/?fromgroups#!searchin/ggplot2/reverse$20log$20scale/ggplot2/AfMf9L9y9fc/Qu-FnJLJaagJ) que parece estar rota en el la versión más reciente. Si @kohske o alguien no puede encontrar otra solución, podría hacer una buena solicitud de funciones. – joran