小编JJ *_*hin的帖子

R + ggplot:geom_txt标签无法识别函数调用中的变量

我是来自MatLab的R/ggplot新手.

我想使用ggplot创建一个函数,在图上打印线性回归方程(在图中 添加回归线方程和R2中讨论).但是在这里,我试图用它来构建一个函数但是没有成功.

我一直收到错误 - "eval中的错误(expr,envir,enclos):找不到对象'标签'".

一种解决方法是在函数之外定义"label"变量,但我只是不明白为什么这不起作用.

有谁能解释为什么?

df <- data.frame(x = c(1:100))
df$y <- 2 + 3 * df$x + rnorm(100, sd = 40)

f <- function(DS, x, y, z) {
    label <- z
    print(label)

    ggplot(DS, aes(x=x, y=y)) + 
        geom_point() +
        labs(y=y) +
        labs(title=y) +
        xlim(0,5)+
        ylim(0,5)+
        geom_smooth(method="lm", se=FALSE)+
        geom_text (aes(x=1, y=4, label=label))
}

f(df, x, y, "aaa") #execution line  
Run Code Online (Sandbox Code Playgroud)

label r function ggplot2 lm

4
推荐指数
1
解决办法
1061
查看次数

标签 统计

function ×1

ggplot2 ×1

label ×1

lm ×1

r ×1