1

我有一组要绘制的数据。
我希望填充(bg)由逻辑变量控制。我可以使它工作的唯一方法是分层两组点。

有没有更好的办法?

require(ggplot2)

dat<-data.frame(
  x=rep(1:10, 2),
  val=c(rnorm(10, 10), rnorm(10, 12)),
  grp=rep(c("A", "B"), each=10),
  tf=sample(c(TRUE, FALSE), 20, replace=TRUE)
  )

ggplot(dat, aes(x, val, col=grp))+
  geom_line()+
  geom_point(aes(alpha=tf), size=4)+
  geom_point(shape=21, size=4, aes(fg=grp))
4

1 回答 1

3

您可以使用手动形状来执行此操作。

ggplot(dat, aes(x, val, col=grp)) +
  geom_line() +
  geom_point(aes(shape=tf), size=4) + 
  scale_shape_manual(values=c(19,21))
于 2013-10-18T10:16:13.557 回答