ggplot2 में स्टॉक डेटा की साजिश करते समय और एक्स-अक्ष के साथ सप्ताहांत और छुट्टियों से अंतराल वाले मुद्दों में चल रहे मुद्दों में चल रहा है। this पोस्ट बहुत उपयोगी रहा है, लेकिन आदेशित कारकों का उपयोग करने की कोशिश करते समय मैं विभिन्न मुद्दों में भाग लेता हूं।ggplot2: x-axis तिथियों से सप्ताहांत और छुट्टियों के लिए रिक्त स्थान हटाएं
library(xts)
library(grid)
library(dplyr)
library(scales)
library(bdscale)
library(ggplot2)
library(quantmod)
getSymbols("SPY", from = Sys.Date() - 1460, to = Sys.Date(), adjust = TRUE, auto.assign = TRUE)
input <- data.frame(SPY["2015/"])
names(input) <- c("Open", "High", "Low", "Close", "Volume", "Adjusted")
# i've tried changing rownames() to index(), and the plot looks good, but the x-axis is inaccurate
# i've also tried as.factor()
xaxis <- as.Date(rownames(input))
input$xaxis <- xaxis
p <- ggplot(input)
p <- p + geom_segment(aes(x = xaxis, xend = xaxis, y = Low, yend = High), size = 0.50) # body
p <- p + geom_segment(aes(x = xaxis - 0.4, xend = xaxis, y = Open, yend = Open), size = 0.90) # open
p <- p + geom_segment(aes(x = xaxis, xend = xaxis + 0.4, y = Close, yend = Close), size = 0.90) # close
p <- p + scale_y_continuous(scale_y_log10())
p + ggtitle("SPY: 2015")
(बिना लाल बक्से) ऊपर साजिश ऊपर कोड खंड के साथ उत्पन्न होता है। और कुछ समाधानों का प्रयास करते समय निम्नलिखित चार्ट कुछ समस्याएं हैं। सबसे पहले, अगर मैं डेटा फ्रेम की अनुक्रमणिका का उपयोग करने का प्रयास करता हूं, तो मैं अच्छा दिखने वाला ग्राफ उत्पन्न करूंगा, लेकिन एक्स-अक्ष गलत है; डेटा वर्तमान में अक्टूबर में समाप्त हो जाती है, लेकिन यह नीचे की साजिश में जुलाई में समाप्त होता है:
xaxis <- as.Date(index(input))
दूसरा, अगर मैं एक आदेश दिया कारक को rownames मजबूर कोशिश, मैं अपने क्षैतिज टिक डेटा (खुला और का प्रतिनिधित्व खोना बन्द)। अगर मैं पैकेज bdscale का उपयोग
xaxis <- factor(rownames(input), ordered = TRUE)
क्षैतिज टिक दूर करने का एक ही मुद्दा होता है, लेकिन ग्रिडलाइनें क्लीनर हैं:
p <- p + scale_x_bd(business.dates = xaxis)
ऊपर अपने प्रश्न में, क्या X- अक्ष में "(बिना लाल बक्से) ऊपर साजिश" उत्पादन के बारे में गलत है? – shekeine
लाल बक्से एक्स-अक्ष में अंतराल को हाइलाइट करते हैं जिन्हें मैं निकालना चाहता हूं। मुझे एक साजिश चाहिए जो दूसरी साजिश (कोई अंतर नहीं) की तरह दिखती है, लेकिन पहली साजिश के एक्स-अक्ष के साथ – jonnie
तो फिर, समस्याएं छुट्टियों या सप्ताहांत की तारीखों की स्वचालित पहचान की समस्या है, क्योंकि यदि आपने ऐसा किया है तो आप सबसेट कर सकते हैं केवल इनपुट दिनों को बनाए रखने के लिए 'इनपुट', है ना? – shekeine