ここで間違っていますか? 透明な灰色の24時間毎日の長方形を代わりに陰影付けしようとしています。しかし、for-loopの最後の矩形だけが描画されます(?!?)forループの代わりに手作業で行うとうまくいきます。ggplot2:プロット上で代替日を透明にする方法
これをベクトル化してforループを回避する方法はありますか? (それはqplotでできますか?) 私はggplot2を初めて使っています。はい、Hadleyのサイト、本、例を読んでいます。
第2の問題:審美的なアルファ設定は、背景を遮る矩形を妨げません。どのように透明性を取得するには?
dat <- data.frame(my_x_series=1:192, my_y_series=5.0*runif(192))
# (ymin, ymax are computed for this series using min/max(na.rm==TRUE))
ymax <- 5.0
ymin <- 0.0
p <- ggplot(dat, aes(x=my_x_series,alpha=0.9))
alternate_daily_bars_xmin <- c(4,52,100,148)
for (shade_xmin in alternate_daily_bars_xmin) {
shade_xmax <- min(shade_xmin+24, 192) # clamp at end of x-range
p <- p + geom_rect(aes(alpha=0.5,xmin=shade_xmin,xmax=shade_xmax,ymin=ymin,ymax=ymax), fill='gray80')
}
p <- p + geom_point(aes(y=my_y_series))
p
は再現性のための*のDAT *のランダムな定義を追加しました。それは私を打つコマンド構文です。私はあなたが期待するかもしれないように、各geom_rectが合成の代わりに最後を上書きすると思います。 – smci