这个问题在这里已有答案:
我正在尝试创建一个带有形状的geom_point,我可以调整到数据点大小和颜色,但是当我输入aes(shape = Messi [4])时,我收到错误消息:
不知道如何自动为data.frame类型的对象选择比例 . 违约持续 .
Messi[1:4]
X Y xG Result
1 7 46 0.11 1
2 7 43 0.15 1
3 10 51 0.15 2
4 13 45 0.08 2
5 6 35 0.05 2
6 10 52 0.11 3
7 4 50 0.25 3
8 11 57 0.08 3
9 9 34 0.04 3
ggplot(Messi, aes(Messi[1], Messi[2])) +
geom_point(aes(colour = Messi[3], size = Messi[3]))
1 回答
我不会称之为错误信息,我会称之为通知 .
以下是使用虹膜数据集发生的情况 .
此
iris[1]
与iris[,1]
或iris$Sepal.Length
不同 . 如果你在每个上面运行类,你会发现它们是不同的,并且iris[1]
是一个data.frame . ggplot2不期望数据帧 .此外,您需要使形状变量不是连续的,例如将其视为一个因素 .
于是
但是会产生你的错误
和
不要 . 请注意,默认情况下,ggplot限制为6个形状(尽管您可以覆盖),因此如果将其应用于其他变量,则.factor()将创建其他问题 .
因此,如错误消息所示,从使用数据帧切换到不同的数据类型 .