matplotlib.colors.LightSource #

クラス matplotlib.colors。光源( azdeg = 315 altdeg = 45 hsv_min_val = 0 hsv_max_val = 1 hsv_min_sat = 1 hsv_max_sat = 0 ) [ソース] #

拠点:object

指定された方位角と仰角から来る光源を作成します。角度は度で表され、方位角は北から時計回りに測定され、表面のゼロ平面から上向きになります。

shadeデータ配列の「影付き」RGB 値を生成するために使用されます。 shade_rgbRGB 画像を標高マップと組み合わせるために使用できます。 hillshadeサーフェスのイルミネーション マップを生成します。

光源の方位角 (南から時計回りに測定) と高度 (サーフェスの平面から測定) を度単位で指定します。

パラメータ:
azdeg float、デフォルト: 315 度 (北西から)

光源の方位角 (0 ~ 360、北から時計回りの角度)。

altdeg float、デフォルト: 45 度

光源の高​​度 (0 ~ 90、水平から上への角度)。

ノート

下位互換性のために、パラメーターhsv_min_valhsv_max_valhsv_min_sat、およびhsv_max_satも初期化時に指定できます。ただし、これらのパラメーターは、「blend_mode='hsv'」がshadeまたはに渡された場合にのみ使用されshade_rgbます。詳細については、ドキュメントを参照しblend_hsvてください。

blend_hsv ( rgb ,強度, hsv_max_sat =なし, hsv_max_val =なし, hsv_min_val =なし, hsv_min_sat =なし) [source] #

入力データ配列を取得し、指定されたカラーマップの HSV 値に変換してから、これらのカラー値を調整して、指定された光源で陰影付きのレリーフ マップの印象を与えます。RGBA 値が返され、imshow でシェーディング イメージをプロットするために使用できます。

結果の画像の色は、(s, v) 値 (hsv 色空間) を (hsv_min_sat, hsv_min_val) に向かって移動することによって暗くなり、(s, v) を (hsv_max_sat, hsv_max_val) に向かってスライドさせることによって明るくなります。照らされている地域。デフォルトの極値は、完全に陰になった点がほぼ黒 (s = 1、v = 0) になり、完全に照らされた点がほぼ白 (s = 0、v = 1) になるように選択されます。

パラメータ:
RGB ndarray

0 から 1 の範囲の float の MxNx3 RGB 配列 (カラー画像)。

強度ndarray

0 から 1 までの浮動小数点数の MxNx1 配列 (グレースケール イメージ)。

hsv_max_sat数値、デフォルト: 1

強度マップが出力イメージをシフトできる最大彩度値。

hsv_min_sat番号、オプション

強度マップが出力イメージをシフトできる最小彩度値。デフォルトは 0 です。

hsv_max_val数値、オプション

強度マップが出力イメージをシフトできる最大値 (「hsv」の「v」) 。デフォルトは 1 です。

hsv_min_val数値、オプション

強度マップが出力イメージをシフトできる最小値 (「hsv」の「v」) 。デフォルトは 0 です。

戻り値:
ndarray

結合された画像を表す MxNx3 RGB 配列。

blend_overlay ( rgb ,強度) [ソース] #

「オーバーレイ」ブレンディングを使用して、RGB イメージを強度マップと結合します。

パラメータ:
RGB ndarray

0 から 1 の範囲の float の MxNx3 RGB 配列 (カラー画像)。

強度ndarray

0 から 1 までの浮動小数点数の MxNx1 配列 (グレースケール イメージ)。

戻り値:
ndarray

結合された画像を表す MxNx3 RGB 配列。

blend_soft_light ( rgb ,強度) [ソース] #

「ペグトップ」式を使用して、「ソフトライト」ブレンディングを使用して RGB イメージを強度マップと結合します。

パラメータ:
RGB ndarray

0 から 1 の範囲の float の MxNx3 RGB 配列 (カラー画像)。

強度ndarray

0 から 1 までの浮動小数点数の MxNx1 配列 (グレースケール イメージ)。

戻り値:
ndarray

結合された画像を表す MxNx3 RGB 配列。

プロパティの 方向#

光源に向かう単位ベクトルの方向。

陰影起伏(標高 vert_exag = 1 dx = 1 dy = 1分数= 1.0 ) [ソース] #

定義された光源の方位角と仰角を使用して、表面の照度を計算します。

これにより、サーフェスの法線ベクトルが計算され、次にそれらが渡されます。shade_normals

パラメータ:
標高2D 配列のようなもの

イルミネーション マップの生成に使用される高さの値

vert_exag番号、オプション

照度を計算するときに標高値を誇張する量。これは、xy 座標系と標高座標系の間の単位の違い (たとえば、10 進度とメートル) を補正したり、地形効果を誇張したり強調したりしないために使用できます。

dx番号、オプション

入力標高グリッドの X 間隔 (列) 。

dy番号、オプション

入力標高グリッドの Y 間隔 (行) 。

分数、オプション

陰影起伏のコントラストを増減します。1 より大きい値を指定すると、中間値が完全なイルミネーションまたはシャドウに近づきます (0 または 1 を超える値はクリップされます)。これは、視覚的にも数学的にも、垂直強調と同じではないことに注意してください。

戻り値:
ndarray

0 から 1 までの照明値の 2D 配列。0 は完全に影になり、1 は完全に照らされます。

shade ( data , cmap , norm = None , blend_mode = 'overlay' , vmin = None , vmax = None , vert_exag = 1 , dx = 1 , dy = 1 , fraction = 1 , ** kwargs ) [source] #

カラーマップされたデータ値を、値の照度マップ (別名「陰影起伏」) と組み合わせます。

パラメータ:
2D 配列のようなデータ

シェーディング マップの生成に使用される高さの値。

cmapColormap

データ配列の色付けに使用されるカラーマップ。Colormapこれはインスタンスでなければならないことに注意してください。たとえば、 を渡すのではなく、代わりcmap='gist_earth'に使用 cmap=plt.get_cmap('gist_earth')します。

標準Normalizeインスタンス、オプション

カラーマッピングの前に値をスケーリングするために使用される正規化。None の場合、入力はその最小値と最大値の間で線形にスケーリングされます。

blend_mode {'hsv', 'overlay', 'soft'} または呼び出し可能、オプション

カラーマップされたデータ値を照明強度と組み合わせるために使用されるブレンドのタイプ。デフォルトは「オーバーレイ」です。ほとんどの地形サーフェスでは、「オーバーレイ」または「ソフト」の方が視覚的によりリアルに見えることに注意してください。ユーザー定義関数が提供される場合、浮動小数点数の MxNx3 RGB 配列 (0 から 1 の範囲) と MxNx1 陰影起伏配列 (同じく 0 から 1) を組み合わせることが期待されます。(Call signature ) この関数に提供される追加の kwargs は、blend_mode 関数に渡されます。func(rgb, illum, **kwargs)

vmin float または None、オプション

カラーマッピングデータで使用される最小値。Noneの場合、データの最小値が使用されます。normが指定されている場合、この引数は無視されます。

vmax float または None、オプション

カラーマッピングデータで使用される最大値。Noneの場合、データの最大値が使用されます。normが指定されている場合、この引数は無視されます。

vert_exag番号、オプション

照度を計算するときに標高値を誇張する量。これは、xy 座標系と標高座標系の間の単位の違い (たとえば、10 進度とメートル) を補正したり、地形を誇張したり強調したりしないようにするために使用できます。

dx番号、オプション

入力標高グリッドの X 間隔 (列) 。

dy番号、オプション

入力標高グリッドの Y 間隔 (行) 。

分数、オプション

陰影起伏のコントラストを増減します。1 より大きい値を指定すると、中間値が完全なイルミネーションまたはシャドウに近づきます (0 または 1 を超える値はクリップされます)。これは、視覚的にも数学的にも、垂直強調と同じではないことに注意してください。

追加の kwargs は *blend_mode* 関数に渡されます。
戻り値:
ndarray

0 ~ 1 の範囲の浮動小数点数の MxNx4 配列。

shade_normals (法線分数= 1.0 ) [ソース] #

定義された光源の方位角と仰角を使用して、表面の法線ベクトルの照度を計算します。

私たちの表面を照らす方位角と仰角の位置に無限遠に配置された人工の太陽を想像してみてください。太陽に向かって傾斜している表面の部分は明るくなり、反対側を向いている部分は暗くなるはずです。

パラメータ:
分数、オプション

陰影起伏のコントラストを増減します。1 より大きい値を指定すると、中間値が完全なイルミネーションまたはシャドウに近づきます (0 または 1 を超える値はクリップされます)。これは、視覚的にも数学的にも、垂直強調と同じではないことに注意してください。

戻り値:
ndarray

0 から 1 までの照明値の 2D 配列。0 は完全に影になり、1 は完全に照らされます。

shade_rgb ( rgb標高分数= 1.0 blend_mode = 'hsv' vert_exag = 1 dx = 1 dy = 1 ** kwargs ) [source] #

この光源を使用して、rgb入力配列の色を調整し、指定されたさの影付きレリーフ マップの印象を与えます。

パラメータ:
RGB配列のような

(M, N, 3) RGB 配列で、0 から 1 の範囲であると想定されます。

標高配列のような

シェーディング マップの生成に使用される高さの値の (M, N) 配列。

分数_

陰影起伏のコントラストを増減します。1 より大きい値を指定すると、中間値が完全なイルミネーションまたはシャドウに近づきます (0 または 1 を超える値はクリップされます)。これは、視覚的にも数学的にも、垂直強調と同じではないことに注意してください。

blend_mode {'hsv', 'overlay', 'soft'} または呼び出し可能、オプション

カラーマップされたデータ値を照明強度と組み合わせるために使用されるブレンドのタイプ。下位互換性のために、これはデフォルトで「hsv」に設定されています。ほとんどの地形サーフェスでは、「オーバーレイ」または「ソフト」の方が視覚的によりリアルに見えることに注意してください。ユーザー定義関数が提供される場合、浮動小数点数の MxNx3 RGB 配列 (0 から 1 の範囲) と MxNx1 陰影起伏配列 (同じく 0 から 1) を組み合わせることが期待されます。(Call signature ) この関数に提供される追加の kwargs は、blend_mode関数に渡されます。func(rgb, illum, **kwargs)

vert_exag番号、オプション

照度を計算するときに標高値を誇張する量。これは、xy 座標系と標高座標系の間の単位の違い (たとえば、10 進度とメートル) を補正したり、地形を誇張したり強調したりしないようにするために使用できます。

dx番号、オプション

入力標高グリッドの X 間隔 (列) 。

dy番号、オプション

入力標高グリッドの Y 間隔 (行) 。

追加の kwargs は *blend_mode* 関数に渡されます。
戻り値:
ndarray

0 ~ 1 の範囲の float の (m, n, 3) 配列。

#を使用した例matplotlib.colors.LightSource

シェーディングの例

シェーディングの例

シェーディングの例
シェーディング & パワー ノーマライズド レンダリング

シェーディング & パワー ノーマライズド レンダリング

シェーディング & パワー ノーマライズド レンダリング
AGG フィルター

AGG フィルター

AGG フィルター
3D 曲面プロットでのカスタム陰影起伏

3D 曲面プロットでのカスタム陰影起伏

3D 曲面プロットでのカスタム陰影起伏
陰影起伏

陰影起伏

陰影起伏
地形陰影起伏

地形陰影起伏

地形陰影起伏