#r #ggplot2 #scale
#r #ggplot2 #масштаб
Вопрос:
Я хотел бы выполнить обратное преобразование log2 только для моих координат.
Насколько я понимаю, exp_trans() и log_trans() идут вместе, поэтому
gg.plot
coord_trans(x="exp")
выполнит обратное логарифмирование координат.
Однако я заметил, что для log2_trans() нет ничего похожего на 2_trans() .
Какие у меня варианты?
Ответ №1:
Один из вариантов — использовать scales::exp_trans(base = ...)
как функцию, а не по имени. Продемонстрировано для оси y ниже. Вычисления разрыва по умолчанию не так хороши coord_trans()
. Обратите внимание, что есть предупреждения о бесконечных значениях, но, вероятно, это расширенные пределы оси, которые выходят за пределы [0, Inf]
домена для лог-преобразований.
library(ggplot2)
ggplot(pressure, aes(temperature, pressure))
geom_line()
scale_y_log10()
coord_trans(y = scales::exp_trans(10))
#> Warning in trans$inverse(continuous_range_coord): NaNs produced
#> Warning in self$trans$y$inverse(panel_params$y.range): NaNs produced
Создано 2021-01-11 пакетом reprex (версия 0.3.0)