Я хотел бы сделать график в ggplot2 с осью X на шкале log10 и метками в обычной, а не научной записи с минимальным количеством знаков после запятой.Это означает, что я хотел бы показать 0,1 как 0,1 вместо 0,10 и 100 как 100 вместо 100,00.
Я пытался
df = data.frame(x = c(1:10 %o% 10^(-3:2)), y = rnorm(60))
ggplot(df, aes(x=x, y=y))+
geom_point()+scale_x_log10(labels=comma)
К сожалению, это показывает много десятичных знаков.
@ BenBolker ранее отвечал на аналогичный вопрос , и его код отлично работает для чисел без десятичных знаков, но если числа меньше 1, то, похоже, результаты будут такими же, как метки = запятая.
plain <- function(x,...) {
format(x, ..., scientific = FALSE, trim = TRUE)
}
ggplot(df, aes(x=x, y=y))+
geom_point()+scale_x_log10(labels=plain)