2016-04-18 5 views
17

में हालिया प्लॉट लाइन का रंग कैसे प्राप्त करें I रंग को निर्दिष्ट किए बिना एक पंक्ति प्लॉट करें (सोचें: plt.plot (x, y))। कहें कि रंग नीला हो गया है।पायथन के पीएलटी

प्रश्न: मैं इस रंग को पीएलटी ऑब्जेक्ट से कैसे प्राप्त करूं ताकि मैं इसे एक चर में डाल सकूं?

लगता है जैसे यह (और संभवत: समाधान) करीब है:

p = plt.plot(x,y) 
color = p[0].get_color() 

अपडेट किया गया प्रश्न: मुझे यकीन है कि मैं समझता हूँ "0" सूचकांक नहीं कर रहा हूँ: पी [0] हमेशा सबसे का उपयोग करता है हाल ही में प्लॉट लाइन?

+1

संभावित डुप्लिकेट [मैं matplotlib में पिछले आंकड़ा के रंग कैसे मिल सकता है?] (Http://stackoverflow.com/questions/13395888/how-can-i-get- रंग-का-आखिरी-आंकड़ा-में-matplotlib) –

+0

@ivan_pozdeev मैंने अपना प्रश्न अपडेट किया, लिंक को इंगित करने के लिए धन्यवाद – denvar

उत्तर

21

आपके उदाहरण में, पी Line2D ऑब्जेक्ट की एक सूची है। उस उदाहरण में आपके पास केवल एक पंक्ति वस्तु है, पी [0]। निम्नलिखित तीन पंक्तियों की साजिश का एक उदाहरण है। जैसे ही अधिक पंक्ति जोड़ दी जाती है, इसे पी.एस. में जोड़ा जाता है यदि आप अंतिम साजिश का रंग चाहते हैं, तो यह a[-1].get_color() होगा।

import numpy as np 
import matplotlib.pyplot as plt 

x = np.arange(10) 
y = np.arange(10) 
p = plt.plot(x,y, x,y*2, x,y*3) # make three line plots 
type(p) # list 
type(p[0]) # <class 'matplotlib.lines.Line2D'> 
p[0].get_color() # 'b' 
p[1].get_color() # 'g' 
p[2].get_color() # 'r' 

line plot

की
संबंधित मुद्दे