2017-03-07 195 views
1

我想繪製Gi的geom_area,datetime函數。我希望每天的每個geom_area的填充由Gi的平均值來定義。具有不同填充顏色的geom_area

df %>% mutate(year = year(datetime)) %>% 
    filter(month(datetime) == 7) %>% 
    ggplot(aes(datetime, Gi, fill = mean(Gi), group = factor(year))) + 
    geom_area() + facet_wrap("year", scales = "free_x", ncol = 1) 

不幸的是,它的結果是,填充顏色不會被歲月改變: enter image description here

+2

你應該提供一個[重複的例子(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)與樣本輸入數據,以便我們可以看到發生了什麼。 – MrFlick

+0

你的數據集中每天的變量是否是GI的平均值?聽起來像是你想要計算的變量,並映射到「fill」。 – aosmith

+0

呵呵。 '平均(GI)'返回一個單一的數字。用白天的平均值,而不是像現在這樣的整體平均值。 –

回答

0
當您使用補=平均值(GI)

,你映射填充色爲單個值整體意思是Gi!

如果我理解正確,你要做的是用不同的顏色爲每年的系列着色,因爲它們有不同的意思。

在這種情況下,你想要的東西像下面,在dplyr,打造手段:

df %>% 
    group_by(YEAR) 
    summarise(YearMean = mean(Gi))