0

境界 vmin=0,vmax=4 で viridis 配色を使用して 2D 等高線図を作成しました。コードは次のとおりです。

ax.contourf(xi/d,yi/d,data/d,12,vmin=0,vmax=4,cmap=vs.viridis(),aspect='equal')

今、別の計算から data=3.5 の特定の場所にデータ ポイントがあり、色付きの円パッチを使用してこれを等高線に重ね合わせたいと考えています。

では、範囲内の円にRGBカラー情報を追加し、輪郭のカラースキームを使用するにはどうすればよいですか

手伝ってくれてありがとう

4

1 に答える 1

0

matplotlib.colors.Normalizeインスタンスを使用してこれを行うことができます。

import matplotlib.pyplot as plt
import matplotlib.colors as colors

norm = colors.Normalize(vmin=0,vmax=4)
cmap = plt.cm.viridis

mycolor = cmap(norm(3.5))
print mycolor
# (0.67848900000000001, 0.86374200000000001, 0.189503, 1.0)

matplotlibカラーマップが別のファイルからインポートされた場合、これが機能する前に最初に登録する必要があることに注意してください。例えば:

import myviridisfile as vs
plt.register_cmap(name='viridis', cmap=vs.viridis)
于 2015-12-10T16:56:47.660 に答える