0

代码给出错误: ggplot(mtcars, aes(wt, mpg)) + geom_point(aes(shape = 1, size = 4))

代码不给出错误: ggplot(mtcars, aes(wt, mpg)) + geom_point(shape = 1, size = 4)

4

1 回答 1

1

这不是时间问题。这是默认行为的问题。

实际的错误信息是

Error: A continuous variable can not be mapped to shape

所以在第一个例子中,因为shape在调用内部aes(),它定义了一个比例。 1不是常数,而是连续变量。

在第二个示例中,因为 shape在对 的调用之外aes(),所以它没有定义比例,因此不会发生错误。

不产生错误的第一个示例的变体是

gplot(mtcars, aes(wt, mpg)) + geom_point(aes(shape = as.factor(1), size = 4))

因为调用as.factor()意味着1不再被视为连续的。

于 2022-01-18T11:17:30.587 回答