Tôi muốn làm cho một âm mưu với một đảo ngược, log10 x quy mô sử dụng ggplot2:Làm thế nào để có được một quy mô đảo ngược, log10 trong ggplot2?
require(ggplot2)
df <- data.frame(x=1:10, y=runif(10))
p <- ggplot(data=df, aes(x=x, y=y)) + geom_point()
Tuy nhiên, có vẻ như tôi có thể hoặc một quy mô log10 hoặc một quy mô đảo ngược:
p + scale_x_reverse() + scale_x_log10()
p + scale_x_reverse()
Tôi đoán điều này là hợp lý, nếu một lớp chỉ có thể có một tỷ lệ. Và chắc chắn tôi có thể hack nó bằng cách làm biến log trên dataframe bản thân mình, df$xLog <- log10(df$x)
nhưng giải pháp đó có vẻ trái ngược với tinh thần của ggplot. Có cách nào để có được loại âm mưu này mà không làm biến đổi dữ liệu bên ngoài cuộc gọi ggplot không?
tôi mong đợi này để làm việc là tốt, nhưng dường như một chút của nó phức tạp. Có [workgroup] (https://groups.google.com/forum/?fromgroups#!searchin/ggplot2/reverse$20log$20scale/ggplot2/AfMf9L9y9fc/Qu-FnJLJaagJ) dường như bị hỏng trong phiên bản mới nhất. Nếu @kohske hoặc ai đó không thể tìm ra giải pháp khác, có thể tạo một yêu cầu tính năng tốt. – joran