2016-07-01 24 views
1

Ich möchte die folgenden Colormaps erstellen.Manuelle Einrichtung Colormap für Farbbalken Matplotlib

mycolorbar1 = [dark-violet light-green dark-red dark-blue] 

mycolorbar2 = [dark-brown dark-red] 

dann kann ich sie im folgenden Teil meines Codes verwenden.

plt.tricontourf(triang1, Z1,v1,cmap=mycolorbar1, norm=plt.Normalize(vmin=v1mi,vmax=v1ma)) 

plt.tricontourf(triang2, Z2,v2,cmap=mycolorbar2, norm=plt.Normalize(vmin=v2mi,vmax=v2ma)) 

Ich schätze wirklich Ihre Hilfe und Unterstützung.

+0

Kennen Sie schon http://stackoverflow.com/questions/16834861/create-own-colormap-using-matplotlib-and-plot - Farbskala? lq = 1? – lanery

Antwort

2

Während der Post meinen Kommentar Links zu Antworten Ihre Frage, ist es wahrscheinlich zu kompliziert. Es gibt einen viel einfacheren Ansatz, der von Joe Kington in this post gezeigt wird, der LinearSegmentedColormap.from_list() verwendet, um benutzerdefinierte Colormaps zu erzielen.

from matplotlib.colors import LinearSegmentedColormap 

color_dict1 = {'dark_violet': '#880088', 
       'light_green': '#00CC00', 
       'dark_red': '#AA0000', 
       'dark_blue': '#0000AA'} 

color_dict2 = {'dark_brown': '#d95f0e', 
       'dark_red': '#e34a33'} 


mycolorbar1 = LinearSegmentedColormap.from_list('mycolorbar1', [ 
    color_dict1['dark_violet'], 
    color_dict1['light_green'], 
    color_dict1['dark_red'], 
    color_dict1['dark_blue']]) 

mycolorbar2 = LinearSegmentedColormap.from_list('mycolorbar2', [ 
    color_dict2['dark_brown'], 
    color_dict2['dark_red']]) 

Damit Sie Plots erhalten wie

enter image description here

+0

Wirklich geschätzt, können Sie mich bitte wissen, wo soll ich die Farbcodierung wie diejenigen, die Sie erwähnt haben, erhalten? 'dark_violet': '# 880088' – madf19

+0

Ich fand die Referenzen. Danke noch einmal. http://matplotlib.org/examples/color/named_colors.html – madf19

+0

Das ist eine gute Referenz, aber für alle farbbezogenen Dinge in Matplotlib bevorzuge ich http://colebreer2.org/ – lanery