趋势线根据 ggplot2 中的轴比例变化
Trend line changes depending on axis scale in ggplot2
我正在使用 ggplot2 和 ggmics 生成趋势线。
library(ggplot2)
library(ggpmisc)
library(scales)
x <- c(5,2,6,8,9,1,3,6,8,2)
y <- c(4,7,2,5,7,9,5,2,1,3)
df <- data.frame(x,y)
g <- ggplot(df,aes(x,y))
g <- g + geom_point(colour = "black")
g <- g + stat_smooth(method = lm, formula = y ~ x, se = FALSE)
g <- g + stat_poly_eq(formula = y ~ x,
aes(label = paste(stat(eq.label),stat(rr.label),stat(adj.rr.label),stat(p.value.label),sep = "~~~")),
label.x = "right",label.y = "bottom",parse = TRUE)
gg <- g + coord_trans(y = "identity")
gg <- g + coord_trans(y = "log")
gg <- g + scale_y_log10(breaks=10^(0:3),
labels=trans_format("log10",math_format(10^.x)))
- 对于
g
,标签是y = 6.26 - 0.351x
- 对于
gg
,是y = 0.782 - 0.0419x
当我使用指数表示法时,eq.label
的值发生变化。我认为 eq.label
不应该改变,因为我只是在改变轴比例。你能告诉我为什么吗?
我认为要了解的主要内容是下面 link 中提供的信息:
- 变换尺度和变换尺度的区别
坐标系是比例变换发生在之前
统计,然后进行坐标变换。协调
transformation 也会改变 geoms 的形状:
如果变换(比例)在统计之前,如果关系与对数成线性关系,则对变换后的 data.This 执行减少平方和的误差就可以了变量的。
如果您转换坐标,这会发生变化,因为此处统计是在转换后执行的。例如对未转换的数据执行减少平方和的误差。
看这里:https://ggplot2.tidyverse.org/reference/coord_trans.html
我正在使用 ggplot2 和 ggmics 生成趋势线。
library(ggplot2)
library(ggpmisc)
library(scales)
x <- c(5,2,6,8,9,1,3,6,8,2)
y <- c(4,7,2,5,7,9,5,2,1,3)
df <- data.frame(x,y)
g <- ggplot(df,aes(x,y))
g <- g + geom_point(colour = "black")
g <- g + stat_smooth(method = lm, formula = y ~ x, se = FALSE)
g <- g + stat_poly_eq(formula = y ~ x,
aes(label = paste(stat(eq.label),stat(rr.label),stat(adj.rr.label),stat(p.value.label),sep = "~~~")),
label.x = "right",label.y = "bottom",parse = TRUE)
gg <- g + coord_trans(y = "identity")
gg <- g + coord_trans(y = "log")
gg <- g + scale_y_log10(breaks=10^(0:3),
labels=trans_format("log10",math_format(10^.x)))
- 对于
g
,标签是y = 6.26 - 0.351x
- 对于
gg
,是y = 0.782 - 0.0419x
当我使用指数表示法时,eq.label
的值发生变化。我认为 eq.label
不应该改变,因为我只是在改变轴比例。你能告诉我为什么吗?
我认为要了解的主要内容是下面 link 中提供的信息:
- 变换尺度和变换尺度的区别 坐标系是比例变换发生在之前 统计,然后进行坐标变换。协调 transformation 也会改变 geoms 的形状:
如果变换(比例)在统计之前,如果关系与对数成线性关系,则对变换后的 data.This 执行减少平方和的误差就可以了变量的。
如果您转换坐标,这会发生变化,因为此处统计是在转换后执行的。例如对未转换的数据执行减少平方和的误差。
看这里:https://ggplot2.tidyverse.org/reference/coord_trans.html