2012-05-10 35 views
5

私はX軸に日付/時刻(POSIXct)を、Y軸にいくつかのデータを持つRのプロットを持っています。
x軸の各日の午後3時から午後6時までの間に陰影をつけたいx軸の日付間の陰影を提供

+0

、 '?rect'(そしておそらく'パー( "USR") 'へプロットの最小値/最大値をユーザー単位で取得する - または 'grconvertX/grconvertY')を使用して、一連の影付き矩形を設定し、それらの上にデータを再描画します。再現可能な例が良いでしょう。 –

答えて

15

多かれ少なかれBrian Diggs suggests aboveは、

#sample data 
set.seed(666) 
dat <- data.frame(x = seq(as.POSIXct('2011-03-27 00:00:00'), 
len= (n=24), by="1 hour"), y = cumsum(rnorm(n))) 
#Breaks for background rectangles 
rects <- data.frame(xstart = as.POSIXct('2011-03-27 15:00:00'), 
xend = as.POSIXct('2011-03-27 18:00:00')) 

library(ggplot2) 
ggplot() + 
    geom_rect(data = rects, aes(xmin = xstart, xmax = xend, 
      ymin = -Inf, ymax = Inf), alpha = 0.4) + 
    geom_line(data = dat, aes(x,y)) 

はあなたにこれを与えるだろうか、以下、 m

7

データを扱う1日の午後3時と午後6時の列を持つdata.frameを作成します。 geom_rect層に使用します(yにはInf-Infを使用)。そのレイヤーをデータレイヤーの前に置いて(その下にあるように)、塗りつぶしにアルファベットを付けてグリッドを見ることができます。

さらに詳細で再現性のある質問で詳細な回答が可能です。おそらく使用してベースのグラフィックスで

関連する問題