2017-04-19 7 views
0

matplotlibのパッチオブジェクトの色範囲はどのように設定しますか?matplotlibのパッチオブジェクトの色範囲はどのように設定しますか?

cmap = plt.cm.get_cmap('jet') 

これは、返された値に従ってデータフレームとカラーパッチを反復処理するループです。私は、カラーマップの上限と下限を設定したいと思います。 【alt_lot_columnは]でパッチを着色するために使用される浮動小数点数を返す

currentAxis = plt.gca() 
currentAxis.add_patch(Circle((xpos, ypos), radius, fill=False, color=cmap(a[alt_plot_column]), lw=4)) 

質問です - 最大最小値をカラーマップの範囲によって規定されているように、このカラーマップを拡張する方法?例えば0-20。 maxとvainの属性を設定しようとしましたが、これらはパッチオブジェクトには当てはまりません。

答えて

0

カラーマップは0と1の間の値を取り、色にマッピングします。したがってcmap(20)は機能しません。

データを正規化する必要があります。一般的な(リニア)の場合、それは簡単に思えるこの場合、

norm = lambda x: x/20. 
cmap(norm(a)) 

では、正規のインスタンスを使用することができます

norm = matplotlib.colors.Normalize(vmin=0, vmax=20) 
cmap(norm(a)) 
関連する問題