मैं यहां क्या गलत कर रहा हूं? मैं पारदर्शी ग्रे के साथ वैकल्पिक 24-घंटे दैनिक आयताकार छाया करने की कोशिश कर रहा हूं। लेकिन फॉर-लूप से केवल अंतिम आयताकार खींचा जाता है (?!?) यदि मैं फॉर-लूप के बजाय मैन्युअल रूप से चीजें करता हूं तो यह ठीक काम करता है।ggplot2: प्लॉट पर वैकल्पिक दिनों को पारदर्शी रूप से छाया कैसे करें
क्या फॉर-लूप से बचने के लिए इसे सदिश करने का कोई तरीका है? (और यह 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
जोड़ा * Dat * reproducibility के लिए के यादृच्छिक परिभाषा। यह कमांड सिंटैक्स है जो मुझे मार रहा है। मुझे लगता है कि प्रत्येक geom_rect कंपोजिटिंग के बजाए आखिरी ओवरराइड करता है जैसे आप उम्मीद कर सकते हैं। – smci