stat_poly_eq 中的 R 科学记数法
Posted
技术标签:
【中文标题】stat_poly_eq 中的 R 科学记数法【英文标题】:R scientific notation in stat_poly_eq 【发布时间】:2022-01-15 19:25:18 【问题描述】:我目前正在 ggplot2 中使用 stat_poly_eq 的代码,想知道是否有办法始终在 xe+1 中获取图表上的值?到目前为止,它只在值非常高或非常低时给我 Xx10^1。我希望它始终以科学记数法表示 stat(eq.label)。
我的代码:
ggplot()+
stat_poly_eq(aes(label = paste(stat(eq.label), "*\", \"*",
stat(rr.label), "*\", \"*",
stat(p.value.label), "*\"\"",
sep = "")),
formula = my.formula, parse = TRUE, size = 4)+
谢谢!
【问题讨论】:
【参考方案1】:可能是这样的:
df <- data.frame(x = c(1:100))
df$y <- 20 + 30 * df$x + rnorm(100, sd = 80)
library(ggpmisc)
my_formula <- y ~ x
myformat <- "y = %s + %s x --- R²: %s"
ggplot(df, aes(x, y)) +
geom_point() +
geom_smooth(method = "lm", formula = my_formula, se = FALSE) +
stat_poly_eq(
formula = my_formula, output.type = "numeric",
mapping = aes(
label =
sprintf(
myformat,
format(stat(coef.ls)[[1]][[1, "Estimate"]], scientific = TRUE, digits =4),
format(stat(coef.ls)[[1]][[2, "Estimate"]], scientific = TRUE, digits =4),
formatC(stat(r.squared)))),
vstep = 0.1
)
【讨论】:
以上是关于stat_poly_eq 中的 R 科学记数法的主要内容,如果未能解决你的问题,请参考以下文章