2012-02-22 22 views
53

matplotlibで作成したプロットのデフォルトの色を設定するにはどうすればよいですか?私はこのmatplotlibを使ってすべてのサブプロットのデフォルトカラーサイクルを設定する方法は?

import numpy as np 
import matplotlib.pyplot as plt 

fig=plt.figure(i) 
ax=plt.gca() 
colormap = plt.get_cmap('jet') 
ax.set_color_cycle([colormap(k) for k in np.linspace(0, 1, 10)]) 

のような特定のカラーマップを設定することができますが、サブプロットを含むすべてのプロットのための色の同じセットを設定するためのいくつかの方法がありますか?

+0

http://stackoverflow.com/questions/4971269/how-to-pick-a-new-color-for-each-plotted-line-within-a-:あなたはaxes.prop_cycleを使用する必要がありますフィギュアインマットライブラリー –

答えて

65

確かに! specify axes.color_cycle in your .matplotlibrc fileのいずれか、または実行時にmatplotlib.rcParamsまたはmatplotlib.rcを使用して設定します。後者の例として

:matplotlibの1.5最低

import matplotlib.pyplot as plt 
import matplotlib as mpl 
import numpy as np 

# Set the default color cycle 
mpl.rcParams['axes.color_cycle'] = ['r', 'k', 'c'] 

# Alternately, we could use rc: 
# mpl.rc('axes', color_cycle=['r','k','c']) 

x = np.linspace(0, 20, 100) 

fig, axes = plt.subplots(nrows=2) 

for i in range(10): 
    axes[0].plot(x, i * (x - 10)**2) 

for i in range(10): 
    axes[1].plot(x, i * np.cos(x)) 

plt.show() 

enter image description here

22

、mpl.rcParams [ 'axes.color_cycle']は推奨されていません。

import matplotlib as mpl 
mpl.rcParams['axes.prop_cycle'] = mpl.cycler(color=["r", "#e94cdc", "0.7"]) 
関連
関連する問題