由于某些原因,当代码分成多行时,ggplot运行很困难。例如,以下代码行将运行(但是很长且难以使用):
ggplot(mapping = aes(x = weight, y = horsepower)) + geom_point(size = 3) + labs(x = "Vehicle weight (lbs.)", y = "Engine Horsepower") + ggtitle("Weight vs. Horsepower")
但是,适合tidyverse样式指南的以下代码行将无法运行:
ggplot(mapping = aes(x = weight, y = horsepower)) + geom_point(size = 3)
+ labs(x = "Vehicle weight (lbs.)", y = "Engine Horsepower")
+ ggtitle("Weight vs. Horsepower")
我不确定自己在做什么错,我的搜索没有发现任何问题。
我得到的错误是:
Invalid argument to unary operator calls
答案 0 :(得分:0)
您需要在每行末尾加+号。 像
ggplot(data,aes(x,y)) +
geom_line()
不是
ggplot(data,aes(x,y))
+ geom_line()
类似地,在使用dplyr管道(%>%)时,您也需要类似的方法
答案 1 :(得分:0)
这与代码的布局和结构有关。
不要将+
运算符放在每一行的开头。
相反,您需要将它们放在前几行的末尾,如下所示:
ggplot(mapping = aes(x = weight, y = horsepower)) +
geom_point(size = 3) +
labs(x = "Vehicle weight (lbs.)", y = "Engine Horsepower") +
ggtitle("Weight vs. Horsepower")