0

我有一些看起来像这样的数据:

> head(taus)
        date window tau
1 2009-04-16      1   1
2 1994-09-13      1   3
3 2011-07-22      1   2
4 2003-09-05      1   1
5 2000-11-01      1   2
6 2008-02-12      1   1

有固定数量的窗口。我可以这样看待它:

ggplot(data=taus, aes(x=tau)) 
    + stat_bin(binwidth=10,col="black") 
    + facet_wrap(~ window, ncol=4)

但是有没有办法将所有图表放在一个图表上,为每个窗口赋予不同的颜色,并使它们透明以便我可以看到它们?

4

3 回答 3

1

就像是:

ggplot(taus, aes(x=tau, fill=factor(window), group=window)) + 
   geom_bar(position='dodge', binwidth=10)

这种方式,而不是faceting,你正在使用groupingfill着色。这factor(window)是强制ggplot将整数window视为级别而不是连续变量。

请注意,我还添加position='dodge'到 geom_bar。这样,window组就不会堆叠。

于 2013-04-30T14:56:23.177 回答
0

根据贾斯汀的建议,这就是我最终使用的:

> ggplot(spx, aes(x=tau, fill=window, group=window, alpha=1/4)) +
+ geom_bar(position='identity', binwidth=5, drop=T) +
+ scale_y_log10()
于 2013-04-30T15:27:48.557 回答
0

这基本上做同样的事情,但 alpha 没有出现在图例中:

> ggplot(spx, aes(x=tau, group=window, fill=window)) + 
+     stat_bin(position='identity', binwidth=5, drop=T, alpha=0.3) +
+     scale_y_log10()
于 2013-04-30T16:17:34.547 回答