hour_mark avg_intensity
<int> <dbl>
0 2.1295503
1 1.4190782
2 1.0439443
3 0.4437299
4 0.6330472
5 4.9506438
6 7.7712137
7 10.7336198
8 14.6680988
9 15.3877551
10 17.6437029
11 16.9212513
12 19.8470716
13 18.7752443
14 18.8686211
15 15.5846995
16 17.7166483
17 21.6556291
18 21.9216336
19 21.3852097
20 14.3399558
21 12.0729282
22 9.0630531
23 4.9966777
ggplot(data=avg_int_hourly,
aes(x=factor(hour_mark),
y=avg_intensity,group=1))
geom_line(color="red")
geom_point()
labs(title='Average Intensity Each Hour of the Day')
xlab('Hours of Day')
ylab('Average Intensity')

上面的圖表沒有問題,但現在我想根據一天中的時間更改背景顏色:0-6 = 紫色,6-19 = 橙色,20-23 = 紫色
所以,我希望它看起來像(能夠調整不透明度對我來說也是必要的):

如果可能的話,我希望有一種方法可以添加兩種不同顏色的圖例,以注意它們在圖表的右側或頂部代表白天和黑夜。
我已經嘗試過這樣的事情,但我不知道我在做什么:

uj5u.com熱心網友回復:
我們可以使用geom_rect:
library(tidyverse)
library(scales)
ggplot(data=avg_int_hourly,
aes(x=factor(hour_mark),
y=avg_intensity,group=1))
geom_line(color="red")
geom_point()
geom_rect(aes(xmin=0,xmax=7,ymin=0,ymax=Inf),fill="blueviolet",alpha=0.05)
geom_rect(aes(xmin=7,xmax=21,ymin=0,ymax=Inf),fill="pink",alpha=0.05)
geom_rect(aes(xmin=21,xmax=24,ymin=0,ymax=Inf),fill="blueviolet",alpha=0.05)
labs(title='Average Intensity Each Hour of the Day')
xlab('Hours of Day')
ylab('Average Intensity')
theme_minimal()

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/479261.html
