3
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 行不行?这不只是情节的外观不同吗?

谢谢

4

1 回答 1

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()(离散色标)与连续色标相比的外观。

于 2013-04-30T12:31:32.050 回答