当我尝试下面的任何一个时,轴刻度是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')
Run Code Online (Sandbox Code Playgroud)
Did*_*rts 33
您可以使用库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)))
Run Code Online (Sandbox Code Playgroud)

label_log您可以从包中使用scales:
library(scales)
qplot(1:10, 10^(1:10)) +
scale_y_log10(labels = label_log())
Run Code Online (Sandbox Code Playgroud)