ggplot

2012-11-10 27 views
16

में एकाधिक समय-श्रृंखला प्लॉटिंग मेरे पास टाइम-सीरीज़ डेटासेट है जिसमें 10 चर शामिल हैं।ggplot

मैं एक समय-श्रृंखला साजिश बनाना चाहता हूं, जहां प्रत्येक 10 चर अलग-अलग रंगों में, उसी ग्राफ पर, समय के साथ प्लॉट किया जाता है। मान वाई धुरी और एक्स अक्ष पर तारीखों पर होना चाहिए।

डाटासेट सीएसवी के लिए Click Here

यह मैं उपयोग कर रहा है (शायद गलत) कोड है:

c.o<-read.csv(file="co.csv",head=TRUE) 
ggplot(c.o, aes(Year, a, b, c, d, e,f))+geom_line() 

और यहाँ क्या कोड से उत्पादन लग रहा है जैसे:

कर सकते हैं किसी को भी मुझे सही दिशा में इंगित करें? मैं पिछले धागे में कुछ भी नहीं ढूंढ पाया।

समस्या हल, नीचे देखें।

एक अतिरिक्त बात मैं जानना चाहूंगा:

यह साजिश है जो समय के पार सभी चर के औसत का प्रतिनिधित्व करने के लिए एक अतिरिक्त पंक्ति जोड़ने के लिए संभव है, और नीचे और उस रेखा से ऊपर कुछ समरेखण है व्यक्ति का प्रतिनिधित्व करने के विविधताओं?

+1

आपको अपनी अंतिम टिप्पणियों के लिए एक अलग प्रश्न की आवश्यकता हो सकती है। इसे प्राप्त करने के कई तरीके हैं। एक तरह से 'परिवर्तनीय' में एक और स्तर होगा उदाहरण के लिए 'meana_f'' कहा जाता है, तो आप इसे उसी प्लॉट के साथ साजिश कर रहे होंगे जो आप वर्तमान प्लॉट में 'a' या' f' करेंगे। –

+2

क्या आप प्रारंभिक .csv फ़ाइल के हेड() को मुद्रित कर सकते हैं, क्योंकि आपके द्वारा प्रदान किया गया लिंक कहता है कि फ़ाइल नहीं मिली है? – Nanami

+0

क्या आप मूल डेटासेट प्रदान कर सकते हैं? – Eric

उत्तर

31

अपने डेटा df कुछ इस तरह कहा जाता है:

library(ggplot2) 
library(reshape2) 
meltdf <- melt(df,id="Year") 
ggplot(meltdf,aes(x=Year,y=value,colour=variable,group=variable)) + geom_line() 

enter image description here

तो मेरी कोड में मूल रूप से जब मैं aes() im का उपयोग यह कह x- अक्ष Year है, y- अक्ष है value और फिर colour/groupingvariable द्वारा है।

melt() फ़ंक्शन ggplot2 प्रारूप में अपना डेटा प्राप्त करना था। year, आदि के लिए एक बड़ा कॉलम .. जब आप इसे अपने variable के लिए अलग-अलग लाइनों द्वारा साजिश करने के लिए कहते हैं तो आप प्रभावी रूप से विभाजित होते हैं।

+0

किसी कारण से मुझे निम्न त्रुटि मिलती है: eval में त्रुटि (expr, envir, enclos): ऑब्जेक्ट 'वर्ष' नहीं मिला और इससे पहले जब मैंने पिघल() कमांड जोड़ा, तो उसने कहा:> meltdf = पिघल (सह) उपयोग करना आईडी चर के रूप में – user1723765

+0

लाइनों को 'nicer' दिखने का एक तरीका भी है? इन अचानक कूदों को थोड़ा सा लगता है जैसे वे आत्मविश्वास अंतराल थे ... क्या इसे थोड़ा और लगातार बनाया जा सकता है? – user1723765

+0

कूद आपके डेटा हैं .. आप समूह के भीतर वर्षों के लिए साधनों का अर्थ ले सकते हैं यानी 'पिघल() 'के बाद' कास्ट()', डेटा का एक चिकना कार्य साजिश या साल के स्केल को एक्स अक्ष को कोरस करें लेकिन यह वास्तव में है आप तक और आप –