R में समय श्रृंखला कैसे प्लॉट करें (उदाहरण के साथ)


अक्सर, आप यह कल्पना करने के लिए आर में एक समय श्रृंखला बनाना चाह सकते हैं कि समय के साथ समय श्रृंखला में मान कैसे बदलते हैं।

यह ट्यूटोरियल बताता है कि ggplot2 डेटा विज़ुअलाइज़ेशन लाइब्रेरी का उपयोग करके इसे जल्दी से कैसे करें।

आर में मूल समय श्रृंखला प्लॉटिंग

मान लीजिए कि हमारे पास R में निम्नलिखित डेटासेट हैं:

 #create dataset
df <- data.frame(date = as . Date (" 2021-01-01 ") - 0:99,
                 sales = runif (100, 10, 500) + seq (50, 149)^2)

#view first six rows
head(df)

        dirty date
1 2021-01-01 2845.506
2 2020-12-31 2837.849
3 2020-12-30 3115.517
4 2020-12-29 2847.161
5 2020-12-28 3374.619
6 2020-12-27 3182.005

हम ggplot2 का उपयोग करके इस डेटासेट के लिए एक बुनियादी समय श्रृंखला प्लॉट बनाने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

 library (ggplot2)

#create time series plot
p <- ggplot(df, aes (x=date, y=sales)) +
       geom_line()

#display time series plot
p

आर में मूल समय श्रृंखला प्लॉटिंग

X अक्ष पर दिनांकों को प्रारूपित करें

हम प्लॉट के x-अक्ष पर प्रदर्शित तिथियों को प्रारूपित करने के लिए स्केल_x_date() * फ़ंक्शन का उपयोग कर सकते हैं। यह फ़ंक्शन निम्नलिखित तर्क लेता है:

  • %d: दिन 0 और 31 के बीच की संख्या के रूप में
  • %a: संक्षिप्त कार्यदिवस (उदाहरण के लिए “मंगल”)
  • %ए: सप्ताह का संक्षिप्त दिन (उदाहरण के लिए “मंगलवार”)
  • %m : 0 से 12 के बीच के महीने
  • %b: संक्षिप्त महीना (उदाहरण के लिए “जनवरी”)
  • %बी: संक्षिप्त महीना (उदाहरण के लिए “जनवरी”)
  • %y: 2-अंकीय वर्ष (उदाहरण के लिए “21”)
  • %Y: 4-अंकीय वर्ष (उदाहरण के लिए “2021”)
  • %W: वर्ष का सप्ताह 0 से 52 के बीच

* इस फ़ंक्शन के काम करने के लिए, x-अक्ष चर एक दिनांक चर होना चाहिए। यदि यह पहले से नहीं है, तो आप as.Date( variable_name) का उपयोग करके इसे तुरंत एक में बदल सकते हैं।

निम्नलिखित कोड दिखाता है कि व्यवहार में इनमें से किसी एक प्रारूप का उपयोग कैसे करें:

 p + scale_x_date ( date_labels = " %b %Y ") 

आर में कस्टम तिथियों के साथ समय श्रृंखला प्लॉट करना

आप date_breaks तर्क का उपयोग करके x-अक्ष के साथ अधिक बार-बार (या कभी-कभार) ब्रेक भी जोड़ सकते हैं। उदाहरण के लिए, हम हर दो सप्ताह में x-अक्ष पर दिनांक प्रदर्शित कर सकते हैं:

 p + scale_x_date ( date_breaks = " 2 week ") 

आर में एक्स-अक्ष पर दिनांक छलांग के साथ समय श्रृंखला

हम निम्नलिखित तर्क का उपयोग करके आसानी से एक्स-अक्ष लेबल को तिरछा भी कर सकते हैं:

 p + theme ( axis.text.x = element_text (angle= 50 , hjust= 1 )) 

Ggplot2 में X अक्ष लेबल झुकाएँ

अंत में, हम समय श्रृंखला के कथानक को अधिक आकर्षक बनाने के लिए थीम, अक्ष लेबल और शीर्षक बदल सकते हैं:

 p <- ggplot(df, aes (x=date, y=sales)) +
       geom_line( color =" turquoise4 ") +
       theme_minimal() + 
       labs(x="", y=" Sales ", title=" Total Sales (Past 100 Days) ") +
       theme( plot.title = element_text (hjust=0.5, size=20, face=" bold "))

p 

आर में कस्टम जीजीप्लॉट थीम के साथ समय श्रृंखला

अतिरिक्त संसाधन

सर्वोत्तम ggplot2 थीम के लिए एक संपूर्ण मार्गदर्शिका
Ggplot2 शीर्षकों के लिए संपूर्ण मार्गदर्शिका
Ggplot2 में साइड-बाय-साइड प्लॉट कैसे बनाएं

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *