我在ggplot2中遇到Scatterplot问题。我不知道为什么所有的点都是中心的,告诉我我做错了什么。
ggplot(TD, aes(x="Goals total", y="Assists", group=Position)) +
geom_point(aes(shape=Position, color=Position))
> TD
# A tibble: 9 x 3
Position `Goals total` Assists
<fctr> <dbl> <dbl>
1 RCB 0 0
2 RCB 0 1
3 RCB 3 1
4 RB 0 0
5 RB 2 1
6 RB 0 0
7 CF 0 0
8 CF 1 0
9 CF 6 0
答案 0 :(得分:2)
aes
不接受字符串。因此,当您将x = "Goals total"
传递给aes
时,它会将x
的值全部归结为"Goals total"
(这就是为什么字符串"Goals total"
实际上是刻度线中x-axis
上的刻度线而不是轴名称。因此,如果您想继续使用它,您可以这样做:
ggplot(TD, aes(x=`Goals total`, y=Assists, group=Position)) +
geom_point(aes(shape=Position, color=Position))
或者,您可以使用aes_string
的所有字符串:
ggplot(TD, aes_string(x="`Goals total`", y="Assists", group="Position")) +
geom_point(aes(shape=Position, color=Position))
另一个要考虑的想法是不在变量名中使用空格。有了它们,你必须使用`来表达它们。