R 中 200000^x 的倒数
Inverse of 200000^x in R
我想使用 ggplot 绘制辅助轴,我将原始数据乘以 200000^[整列],它的倒数是什么?
scale_y_continuous(sec.axis = sec_axis(~. ) )
使用 Nico 的数学,这是一个使用逆函数的工作示例:
set.seed(2)
z <- data.frame(x=1:100, y=200000^runif(100, 10, 11))
ggplot(z, aes(x, y)) +
geom_point() +
scale_y_continuous(
sec.axis = sec_axis(~ log(.) / log(200000), breaks=c(10.1,10.9, 10.95)),
expand = c(0,0)
)
我不得不使用 expand=c(0,0)
因为轴的扩展(上下文和裁剪常见)导致负值,即使数据中没有负值。这些否定会导致警告,因此如果您不介意这些警告,则可以将其排除。 (可能有其他方法可以处理这种现象,也许 你的 数据不需要它们。)
编辑:我添加了breaks=
。请注意,breaks=
和 labels=
可以用数值或函数作为输入覆盖,因此您不需要像我在这里所做的那样对值进行硬编码。
我想使用 ggplot 绘制辅助轴,我将原始数据乘以 200000^[整列],它的倒数是什么?
scale_y_continuous(sec.axis = sec_axis(~. ) )
使用 Nico 的数学,这是一个使用逆函数的工作示例:
set.seed(2)
z <- data.frame(x=1:100, y=200000^runif(100, 10, 11))
ggplot(z, aes(x, y)) +
geom_point() +
scale_y_continuous(
sec.axis = sec_axis(~ log(.) / log(200000), breaks=c(10.1,10.9, 10.95)),
expand = c(0,0)
)
我不得不使用 expand=c(0,0)
因为轴的扩展(上下文和裁剪常见)导致负值,即使数据中没有负值。这些否定会导致警告,因此如果您不介意这些警告,则可以将其排除。 (可能有其他方法可以处理这种现象,也许 你的 数据不需要它们。)
编辑:我添加了breaks=
。请注意,breaks=
和 labels=
可以用数值或函数作为输入覆盖,因此您不需要像我在这里所做的那样对值进行硬编码。