2015-11-04 13 views
5

मैं एक साधारण चीज़ की संभावना पर अटक गया हूं। मैं Matplotlib में डिफ़ॉल्ट seaborn रंग पैलेट का उपयोग कर रहा हूँ। मैं दो पंक्तियों को प्लॉट करना चाहता हूं जिनमें एक ही रंग है और मैं उस रंग को परिभाषित करना चाहता हूं। मैं उन रंगों का उपयोग करना चाहता हूं जो डिफ़ॉल्ट समुद्री डाकू पैलेट का हिस्सा हैं, यानी मैं Matplotlib डिफ़ॉल्ट लाल के बजाय समुद्र तट लाल करना चाहता हूं।Matplotlib + Seaborn - एक ही रंग के साथ दो लाइनें?

यहाँ मेरी कोड स्निपेट है:

import pylab as plot 
import seaborn 

t = np.arange(0.0, 2.0, 0.01) 
s = np.sin(2*np.pi*t) 
plt.plot(t, s, 'r') 
plt.plot(t, 2*s, 'r') 

अगर मैं ऊपर कोड का उपयोग, मैं matplotlib के डिफ़ॉल्ट लाल मिल (उम्मीद के रूप में)। क्या समुद्र तट के लाल को बताने के लिए कोई "आसान" तरीका है? अगर मैं रंगों को परिभाषित नहीं करता हूं, तो रंग समुद्र के डिफ़ॉल्ट रंग चक्र के माध्यम से चक्र होंगे। धन्यवाद!

उत्तर

7

आप seaborn.color_palette() का उपयोग कर डिफ़ॉल्ट समुद्री रंग रंग प्राप्त कर सकते हैं (कुछ फ़ंक्शन भी आप उस समारोह के माध्यम से प्राप्त कर सकते हैं)। तो अगर आप कर सकते हैं:

t = np.arange(0.0, 2.0, 0.01) 
s = np.sin(2*np.pi*t) 
plt.plot(t, s, c=seaborn.color_palette()[2]) 
plt.plot(t, 2*s, c=seaborn.color_palette()[2]) 

आप डिफ़ॉल्ट के माध्यम से जाना अपने आप को पैलेट और बाहर काम जो मूल्य से मेल खाती है जो करने के लिए रंग, 'लाल' मैं क्या 'से आरबीजी मूल्यों से जुड़ी कोई मददगार नाम देखते हैं की क्या ज़रूरत है देखा है।

+1

यह वही है जो मैं ढूंढ रहा था। आपका बहुत बहुत धन्यवाद! –

+0

समुद्र के बाद के संस्करणों में ऐसा करने के बेहतर तरीके के लिए मेरा उत्तर देखें। – mwaskom

7

समुद्र में 0.6 या बाद में, आप seaborn.set_color_codes() या seaborn.set(color_codes=True) और "r" पर कॉल कर सकते हैं डिफ़ॉल्ट समुद्री शैवाल लाल के रूप में व्याख्या की जाएगी।

+0

यह एक अच्छा विकल्प है। साझा करने के लिए धन्यवाद! –

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