Если я попытаюсь вручную скомпоновать некоторые элементы графика ggplot2
, он работает просто отлично:
> p <- ggplot(aes(x = mpg, y = hp), data = mtcars)
> p + geom_vline(xintercept = 20) + geom_point(data = mtcars)
Но если я попытаюсь связать часть композиции с функцией, я получаю сообщение об ошибке:
> myFunction <- function() {
+ return(
+ geom_vline(xintercept = 20) + geom_point(data = mtcars)
+ )
+ }
> p <- ggplot(aes(x = mpg, y = hp), data = mtcars)
> p + myFunction()
Error in geom_vline(xintercept = 20) + geom_point(data = mtcars) :
non-numeric argument to binary operator
Я пропустил что-то в обозначении ggplot2
для правильного объединения элементов ggplot2
внутри тела функции?