2016-07-29 4 views
5

मुद्दापायथन- घातीय डेटा के लिए मुझे किस रंगमंच योजना का उपयोग करना चाहिए?

मैं एक साजिश मैं gridded डेटा का उपयोग कर दुनिया भर में वर्षा की दरों की प्रवृत्तियों के लिए बनाने के लिए कोशिश कर रहा हूँ है। मैं साजिश खुद को ठीक कर सकता हूं, लेकिन रंग सीमा मुझे मुद्दों दे रही है। मैं यह नहीं समझ सकता कि रंगमंच को मेरे डेटा को बेहतर तरीके से कैसे फिट किया जाए, जो घातीय प्रतीत होता है। मैंने लॉगरिदमिक रेंज की कोशिश की, लेकिन यह डेटा को सही तरीके से फिट नहीं करता है।

कोड & डेटा श्रेणी

यहाँ मेरी 8,192 डेटा मान जब एक साधारण एक्स-y लाइन भूखंड पर क्रम में साजिश रची कैसे दिखाई देते है। डेटा अंक x-axis & मान वाई-अक्ष पर हैं। enter image description here

मेरा डेटा लॉगऑर्मल कलर रेंज के साथ प्लॉट जैसा दिखता है। यह मेरे लिए बहुत अधिक टकसाल हरा & नारंगी लाल है।

#Set labels 
lonlabels = ['0','45E','90E','135E','180','135W','90W','45W','0'] 
latlabels = ['90S','60S','30S','Eq.','30N','60N','90N'] 

#Set cmap properties 
norm = colors.LogNorm() #creates logarithmic scale 

#Create basemap 
fig,ax = plt.subplots(figsize=(15.,10.)) 
m = Basemap(projection='cyl',llcrnrlat=-90,urcrnrlat=90,llcrnrlon=0,urcrnrlon=360.,lon_0=180.,resolution='c') 
m.drawcoastlines(linewidth=1) 
m.drawcountries(linewidth=1) 
m.drawparallels(np.arange(-90,90,30.),linewidth=0.3) 
m.drawmeridians(np.arange(-180.,180.,45.),linewidth=0.3) 
meshlon,meshlat = np.meshgrid(lon,lat) 
x,y = m(meshlon,meshlat) 

#Plot variables 
trend = m.pcolormesh(x,y,lintrends[:,:,0],cmap='jet', norm=norm, shading='gouraud') 

#Set plot properties 
#Colorbar 
cbar=m.colorbar(trend, size='8%',location='bottom',pad=0.8) #Set colorbar 
cbar.set_label(label='Linear Trend (mm/day/decade)',size=25) #Set label 
for t in cbar.ax.get_xticklabels(): 
    t.set_fontsize(25) #Set tick label sizes 
#Titles & labels 
fig.suptitle('Linear Trends of Precipitation (CanESM2)',fontsize=40,x=0.51,y=0.965) 
ax.set_title('a) 1979-2014 Minimum Trend',fontsize=35) 
ax.set_xticks(np.arange(0,405,45)) 
ax.set_xticklabels(lonlabels,fontsize=20) 
ax.set_ylabel('Latitude',fontsize=25) 
ax.set_yticks(np.arange(-90,120,30)) 
ax.set_yticklabels(latlabels,fontsize=20) 

enter image description here

और यहाँ क्या यह एक डिफ़ॉल्ट, अनछुए रंग श्रेणी के साथ की तरह लग रहा है। (एक ही कोड शून्य से आदर्श = आदर्श तर्क।)

enter image description here

सवाल

वहाँ एक गणितीय योजना मैं एक रंग मैप कि बेहतर अपने डेटा की श्रृंखला दर्शाता है बनाने के लिए उपयोग कर सकते हैं? या मुझे कस्टम रेंज बनाने की ज़रूरत है?

+2

तो यदि यह वह रंग है जिसे आप पसंद नहीं करते हैं, तो आप एक अलग रंगरूप चुन सकते हैं। यहां संभावित कॉलमैप्स की एक सूची दी गई है। http://matplotlib.org/examples/color/colormaps_reference.html। आप यह भी जांचना चाहेंगे कि 'लॉग नॉर्म' की 'PowerNorm'instead क्या आप दिखाना चाहते हैं उसके लिए बेहतर है या नहीं। – cel

+0

यह रंग उतना ही नहीं है जितना कि यह सीमा है। अगर मैं मानचित्र पर दिखाने के लिए और अधिक ब्लूज़, साइन्स और चिल्लाना प्राप्त कर सकता हूं, तो मैं खुश रहूंगा। वैसे भी, मैंने पहले पावर नॉर्म के साथ खेला और यह काम नहीं कर रहा था, लेकिन मैंने अभी कोशिश की और मैं vmax = 3 सेट करने के बाद, अब यह और भी दिखता है, हालांकि सभी के लिए अंधेरे ब्लूज़ पर थोड़ा भारी शून्य मान (इसके बारे में मैं इतना कुछ नहीं कर सकता।) इसे एक उत्तर के रूप में पोस्ट करें और मैं इसे स्वीकार करूंगा। – ChristineB

+0

संबंधित नोट पर: [कृपया जेट कॉलोमैप का उपयोग न करें] (http://stats.stackexchange.com/questions/223315/why-use-colormap-viridis-over-jet)। चूंकि कोलोराप का पीला हिस्सा लाल या नीले रंग के हिस्सों की तुलना में उज्ज्वल है, यह आपके सरणी के औसत मूल्यों पर ध्यान खींचता है, जो डेटा विज़ुअलाइज़ेशन बिंदु से कम से कम दिलचस्प हैं। वहां बहुत सारे उचित रंगमंच हैं [http://matplotlib.org/users/colormaps.html) जो आपके प्लॉट को बेहतर दिखने में मदद करेंगे :)। – Andreq

उत्तर

0

एक हैक

आप तो फिर तुम एक ही रंग (अधिकतम) का प्रतिनिधित्व 2 + और होता एक अधिकतम मूल्य, 2 के ऊपर किसी भी मूल्य के लिए यानी लागू करने की कोशिश कर सकते हैं बस के साथ 2.

इसे बदलना शेष रंग आपके डेटा में समान रूप से फैले होंगे।

+0

मैंने अंततः ऐसा किया, लेकिन मुझे अपने सामान्यीकरण को PowerNorm में स्विच करने और स्केल के साथ खेलने के लिए भी आवश्यक था। – ChristineB

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

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