1

真的在为此苦苦挣扎。

a&b是现实世界中的实际数据集,a非常大。我收到一个错误 ggplot2 不知道如何处理 uneval 类的数据。我要做的是将第二个数据集的单个点覆盖到箱线图上,以突出显示一个特定样本与宇宙的比较。

知道我做错了什么吗?我该如何解决?

a = data.frame(YTD.Retn=runif(1000,-10,10),sector="a")
a = rbind(a,data.frame(YTD.Retn=runif(1000,-10,10),sector="b"))
a = rbind(a,data.frame(YTD.Retn=runif(1000,-10,10),sector="c"))
a = rbind(a,data.frame(YTD.Retn=runif(1000,-10,10),sector="d"))
a = rbind(a,data.frame(YTD.Retn=runif(1000,-10,10),sector="e"))
a = rbind(a,data.frame(YTD.Retn=runif(1000,-10,10),sector="f"))
a = rbind(a,data.frame(YTD.Retn=runif(1000,-10,10),sector="g"))

b = data.frame(sector=c("a","b","c","d","e","f","g"),YTD.Retn=c(5,6,7,3,2,-1,-5))

p1 =ggplot(a,aes(factor(sector),YTD.Retn,fill=factor(sector))) + geom_boxplot() +
  scale_fill_discrete(guide=F) +
  geom_point(b,aes(factor(sector),YTD.Retn))

plot(p1)
4

1 回答 1

3

data在调用中调用时,您需要命名参数geom_...()。命名参数通常是一种很好的做法(如果有点耗时)

p1 =ggplot(data = a, aes(x = factor(sector), y = YTD.Retn, fill=factor(sector))) + 
   geom_boxplot() +
  scale_fill_discrete(guide=F) +
  geom_point(data = b, aes(x= factor(sector),y= YTD.Retn))

plot(p1)
于 2012-11-28T02:39:38.157 回答