내가 뭘 잘못하고 있니? 투명 회색으로 대체 24 시간 매일 직사각형을 음영 처리하려고합니다. 그러나 for-loop의 마지막 사각형 만 그려집니다 (?!?) for 루프 대신 수동으로 작업하는 경우 제대로 작동합니다.ggplot2 : 플롯에서 대체 요일을 투명하게 음영 처리하는 방법
for 루프를 피하기 위해 벡터화하는 방법이 있습니까? (그리고 qplot으로 끝낼 수 있습니까?) 저는 ggplot2를 처음 접했고 예 해들리의 사이트, 책 및 예제를 읽었습니다.
두 번째 문제 : 미적으로 알파를 설정해도 배경을 가리는 직사각형이 방지되지 않습니다. 투명성을 얻는 방법?
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
추가 된 임의의 정의. 저를 때리는 명령 구문입니다. 제 생각에 각 geom_rect는 예상했던 것처럼 합성 대신 마지막을 덮어 씁니다. – smci