相当于ggplot中对数刻度的轴标签

时间:2013-03-02 18:49:27

标签: r ggplot2

当我尝试以下任一项时,轴刻度为1e + 03,1e + 06,1e + 09 - 可以获得漂亮的上标10 ^ 3,10 ^ 6,10 ^ 9而无需借助手动标记?我似乎记得在过去自动获得这个。

qplot(1:10, 10^(1:10))+scale_y_log10()
qplot(1:10, 10^(1:10), log='y')

1 个答案:

答案 0 :(得分:32)

您可以使用库trans_breaks()中的trans_format()scales来获取所需的轴值格式。

library(scales)
qplot(1:10, 10^(1:10)) +
     scale_y_log10(breaks = trans_breaks("log10", function(x) 10^x),
              labels = trans_format("log10", math_format(10^.x)))

enter image description here