Tôi đang làm việc với dữ liệu chuỗi thời gian và muốn đánh dấu khu vực biểu đồ bất cứ khi nào một số điều kiện nhất định trở thành sự thật. Ví dụ:ggplot2: vùng biểu đồ đánh dấu
require(ggplot2)
require(quantmod)
initDate <- "1993-01-31"
endDate <- "2012-08-10"
symbols <- c("SPY")
getSymbols(symbols, from=initDate, to=endDate, index.class=c("POSIXt","POSIXct"))
spy<-SPY$SPY.Adjusted
spy$sma<-SMA(spy$SPY.Adjusted,200)
spy<-spy[-(1:199),]
spy<-as.data.frame(spy)
ggplot(spy,aes(x=index(spy),y=spy$SPY.Adjusted))+geom_line()+geom_line(aes(x=index(spy),y=spy$sma))
Đoạn mã trên vẽ lô dữ liệu, nhưng làm cách nào để làm nổi bật phần này khi nào gần trên sma? Câu hỏi này tương tự như How to highlight time ranges on a plot?, nhưng sau đó nó là thủ công. Có chức năng nào trong ggplot2 cho âm mưu có điều kiện không?
Câu hỏi đặt ra bạn liên kết đến _is_ đường đến làm cái này. ** ggplot2 ** chưa có chức năng để hiểu một cái gì đó như 'geom_shade_the_region_that_I_have_in_mind_you_know_that_one()'. Bạn phải thực sự cho nó biết khu vực nào bạn muốn tô bóng. – joran
Bạn sẽ tăng cơ hội nhận được không quants để thử nghiệm với mã của bạn nếu bạn đặt trong các cuộc gọi thư viện thích hợp để chỉ ra những gói cần thiết để chạy mã đó. –
@joran cảm ơn rất nhiều vì câu trả lời sâu sắc ~ sẽ làm việc chăm chỉ để tìm ra thứ gì đó hữu ích. – user1234440