set.seed(123)
library(data.table)
library(ggplot2)
dat=data.table(data.frame(a=rnorm(12),b=rnorm(12),c=rep(c(1,2),6),d=rep(c(1,2,3,4),3)))
ggplot(dat,aes(a,c,colour=d)) + geom_point() # line 1
ggplot(dat,aes(a,c,shape=d)) + geom_point() # line 2
为什么第1行工作但第2行不工作?这不仅仅是地块的外观差异吗?
谢谢
答案 0 :(得分:6)
错误消息告诉您错误:
Error: A continuous variable can not be mapped to shape
shape
需要一个因素:
ggplot(dat,aes(a,c,shape=factor(d))) + geom_point()
同时检查ggplot(dat,aes(a,c,colour=factor(d))) + geom_point()
(离散色标)与连续色标的比较。