matplotlib.colors.LightSource #

classe matplotlib.colors. Source lumineuse ( azdeg = 315 , altdeg = 45 , hsv_min_val = 0 , hsv_max_val = 1 , hsv_min_sat = 1 , hsv_max_sat = 0 ) [source] #

Socles :object

Créez une source de lumière provenant de l'azimut et de l'élévation spécifiés. Les angles sont en degrés, avec l'azimut mesuré dans le sens des aiguilles d'une montre à partir du nord et l'élévation à partir du plan zéro de la surface.

shadeest utilisé pour produire des valeurs RVB "ombrées" pour un tableau de données. shade_rgbpeut être utilisé pour combiner une image RVB avec une carte d'élévation. hillshadeproduit une carte d'illumination d'une surface.

Spécifiez l'azimut (mesuré dans le sens des aiguilles d'une montre à partir du sud) et l'altitude (mesurée à partir du plan de la surface) de la source lumineuse en degrés.

Paramètres :
azdeg float, par défaut : 315 degrés (à partir du nord-ouest)

L'azimut (0-360, degrés dans le sens des aiguilles d'une montre à partir du nord) de la source lumineuse.

altdeg float, par défaut : 45 degrés

L'altitude (0-90, degrés par rapport à l'horizontale) de la source lumineuse.

Remarques

Pour la rétrocompatibilité, les paramètres hsv_min_val , hsv_max_val , hsv_min_sat et hsv_max_sat peuvent également être fournis à l'initialisation. Cependant, ces paramètres ne seront utilisés que si "blend_mode='hsv'" est passé dans shadeou shade_rgb. Voir la documentation blend_hsvpour plus de détails.

blend_hsv ( rgb , intensité , hsv_max_sat = Aucun , hsv_max_val = Aucun , hsv_min_val = Aucun , hsv_min_sat = Aucun ) [source] #

Prenez le tableau de données d'entrée, convertissez-le en valeurs HSV dans la palette de couleurs donnée, puis ajustez ces valeurs de couleur pour donner l'impression d'une carte en relief ombré avec une source de lumière spécifiée. Les valeurs RGBA sont renvoyées, qui peuvent ensuite être utilisées pour tracer l'image ombrée avec imshow.

La couleur de l'image résultante sera assombrie en déplaçant les valeurs (s, v) (dans l'espace colorimétrique hsv) vers (hsv_min_sat, hsv_min_val) dans les régions ombrées, ou éclaircie en faisant glisser (s, v) vers (hsv_max_sat, hsv_max_val) dans régions éclairées. Les extrêmes par défaut sont choisis de sorte que les points complètement ombragés soient presque noirs (s = 1, v = 0) et les points complètement éclairés soient presque blancs (s = 0, v = 1).

Paramètres :
RVB ndarray

Un tableau RVB MxNx3 de flottants allant de 0 à 1 (image couleur).

intensité ndarray

Un tableau MxNx1 de flottants allant de 0 à 1 (image en niveaux de gris).

numéro hsv_max_sat , par défaut : 1

La valeur de saturation maximale à laquelle la carte d' intensité peut décaler l'image de sortie.

numéro hsv_min_sat , facultatif

La valeur de saturation minimale à laquelle la carte d' intensité peut décaler l'image de sortie. La valeur par défaut est 0.

nombre hsv_max_val , facultatif

La valeur maximale ("v" dans "hsv") à laquelle la carte d' intensité peut décaler l'image de sortie. La valeur par défaut est 1.

nombre hsv_min_val , facultatif

La valeur minimale ("v" dans "hsv") à laquelle la carte d' intensité peut décaler l'image de sortie. La valeur par défaut est 0.

Retours :
ndarray

Un tableau RVB MxNx3 représentant les images combinées.

blend_overlay ( rgb , intensité ) [source] #

Combinez une image RVB avec une carte d'intensité en utilisant le mélange "superposition".

Paramètres :
RVB ndarray

Un tableau RVB MxNx3 de flottants allant de 0 à 1 (image couleur).

intensité ndarray

Un tableau MxNx1 de flottants allant de 0 à 1 (image en niveaux de gris).

Retours :
ndarray

Un tableau RVB MxNx3 représentant les images combinées.

blend_soft_light ( rgb , intensité ) [source] #

Combinez une image RVB avec une carte d'intensité en utilisant le mélange "lumière douce", en utilisant la formule "pegtop".

Paramètres :
RVB ndarray

Un tableau RVB MxNx3 de flottants allant de 0 à 1 (image couleur).

intensité ndarray

Un tableau MxNx1 de flottants allant de 0 à 1 (image en niveaux de gris).

Retours :
ndarray

Un tableau RVB MxNx3 représentant les images combinées.

direction de la propriété #

La direction du vecteur unitaire vers la source lumineuse.

ombrage ( élévation , vert_exag = 1 , dx = 1 , dy = 1 , fraction = 1.0 ) [source] #

Calculez l'intensité d'éclairage d'une surface à l'aide de l'azimut et de l'élévation définis pour la source lumineuse.

Cela calcule les vecteurs normaux de la surface, puis les transmet àshade_normals

Paramètres :
élévation 2D semblable à un tableau

Les valeurs de hauteur utilisées pour générer une carte d'illumination

nombre vert_exag , facultatif

Degré d'exagération des valeurs d'élévation lors du calcul de l'éclairage. Cela peut être utilisé soit pour corriger les différences d'unités entre le système de coordonnées xy et le système de coordonnées d'élévation (par exemple degrés décimaux par rapport aux mètres) ou pour exagérer ou minimiser les effets topographiques.

numéro dx , facultatif

L'espacement x (colonnes) de la grille d' élévation en entrée.

numéro dy , facultatif

L'espacement y (lignes) de la grille d' élévation en entrée.

nombre de fraction , facultatif

Augmente ou diminue le contraste de l'ombrage. Les valeurs supérieures à un amèneront les valeurs intermédiaires à se rapprocher de la pleine illumination ou de l'ombre (et à écrêter toutes les valeurs qui se déplacent au-delà de 0 ou 1). Notez que ce n'est pas visuellement ou mathématiquement la même chose que l'exagération verticale.

Retours :
ndarray

Un tableau 2D de valeurs d'éclairage entre 0 et 1, où 0 est complètement dans l'ombre et 1 est complètement éclairé.

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

Combinez les valeurs de données colormaped avec une carte d'intensité d'éclairage (alias "hillshade") des valeurs.

Paramètres :
données de type tableau 2D

Les valeurs de hauteur utilisées pour générer une carte ombrée.

cmapColormap

La palette de couleurs utilisée pour colorer le tableau de données . Notez qu'il doit s'agir d'une Colormapinstance. Par exemple, plutôt que de transmettre cmap='gist_earth', utilisez à la cmap=plt.get_cmap('gist_earth')place.

instance de norme Normalize, facultative

La normalisation utilisée pour mettre à l'échelle les valeurs avant le mappage des couleurs. Si aucun, l'entrée sera mise à l'échelle linéairement entre son minimum et son maximum.

blend_mode {'hsv', 'overlay', 'soft'} ou appelable, facultatif

Le type de mélange utilisé pour combiner les valeurs de données de mappage de couleurs avec l'intensité d'éclairage. La valeur par défaut est "superposition". Notez que pour la plupart des surfaces topographiques, "overlay" ou "soft" semblent plus réalistes visuellement. Si une fonction définie par l'utilisateur est fournie, elle doit combiner un tableau RVB MxNx3 de flottants (allant de 0 à 1) avec un tableau d'ombrage MxNx1 (également de 0 à 1). (Call signature ) Les kwargs supplémentaires fournis à cette fonction seront transmis à la fonction blend_mode .func(rgb, illum, **kwargs)

vmin flottant ou Aucun, facultatif

La valeur minimale utilisée dans les données de mappage de couleurs . Si aucune , la valeur minimale dans les données est utilisée. Si norm est spécifié, cet argument sera ignoré.

vmax flottant ou Aucun, facultatif

La valeur maximale utilisée dans les données de mappage de couleurs . Si None , la valeur maximale dans data est utilisée. Si norm est spécifié, cet argument sera ignoré.

nombre vert_exag , facultatif

Degré d'exagération des valeurs d'élévation lors du calcul de l'éclairage. Cela peut être utilisé soit pour corriger les différences d'unités entre le système de coordonnées xy et le système de coordonnées d'élévation (par exemple degrés décimaux par rapport aux mètres) ou pour exagérer ou désaccentuer la topographie.

numéro dx , facultatif

L'espacement x (colonnes) de la grille d' élévation en entrée.

numéro dy , facultatif

L'espacement y (lignes) de la grille d' élévation en entrée.

nombre de fraction , facultatif

Augmente ou diminue le contraste de l'ombrage. Les valeurs supérieures à un amèneront les valeurs intermédiaires à se rapprocher de la pleine illumination ou de l'ombre (et à écrêter toutes les valeurs qui se déplacent au-delà de 0 ou 1). Notez que ce n'est pas visuellement ou mathématiquement la même chose que l'exagération verticale.

Des kwargs supplémentaires sont transmis à la fonction *blend_mode*.
Retours :
ndarray

Un tableau MxNx4 de flottants compris entre 0 et 1.

shade_normals ( normales , fraction = 1.0 ) [source] #

Calculez l'intensité d'éclairage pour les vecteurs normaux d'une surface en utilisant l'azimut et l'élévation définis pour la source lumineuse.

Imaginez un soleil artificiel placé à l'infini dans une certaine position d'azimut et d'élévation éclairant notre surface. Les parties de la surface qui s'inclinent vers le soleil devraient s'éclaircir tandis que les côtés tournés vers l'extérieur devraient s'assombrir.

Paramètres :
nombre de fraction , facultatif

Augmente ou diminue le contraste de l'ombrage. Les valeurs supérieures à un amèneront les valeurs intermédiaires à se rapprocher de la pleine illumination ou de l'ombre (et à écrêter toutes les valeurs qui se déplacent au-delà de 0 ou 1). Notez que ce n'est pas visuellement ou mathématiquement la même chose que l'exagération verticale.

Retours :
ndarray

Un tableau 2D de valeurs d'éclairage entre 0 et 1, où 0 est complètement dans l'ombre et 1 est complètement éclairé.

shade_rgb ( rgb , élévation , fraction = 1.0 , blend_mode = 'hsv' , vert_exag = 1 , dx = 1 , dy = 1 , ** kwargs ) [source] #

Utilisez cette source de lumière pour ajuster les couleurs du tableau d'entrée RVB afin de donner l'impression d'une carte en relief ombré avec l' élévation donnée .

Paramètres :
semblable à un tableau RVB

Un tableau RVB (M, N, 3), supposé être compris entre 0 et 1.

comme un tableau d' élévation

Un tableau (M, N) des valeurs de hauteur utilisées pour générer une carte ombrée.

nombre de fractions

Augmente ou diminue le contraste de l'ombrage. Les valeurs supérieures à un amèneront les valeurs intermédiaires à se rapprocher de la pleine illumination ou de l'ombre (et à écrêter toutes les valeurs qui se déplacent au-delà de 0 ou 1). Notez que ce n'est pas visuellement ou mathématiquement la même chose que l'exagération verticale.

blend_mode {'hsv', 'overlay', 'soft'} ou appelable, facultatif

Le type de mélange utilisé pour combiner les valeurs de données de mappage de couleurs avec l'intensité d'éclairage. Pour la rétrocompatibilité, la valeur par défaut est "hsv". Notez que pour la plupart des surfaces topographiques, "overlay" ou "soft" semblent plus réalistes visuellement. Si une fonction définie par l'utilisateur est fournie, elle doit combiner un tableau RVB MxNx3 de flottants (allant de 0 à 1) avec un tableau d'ombrage MxNx1 (également de 0 à 1). (Call signature ) Les kwargs supplémentaires fournis à cette fonction seront transmis à la fonction blend_mode .func(rgb, illum, **kwargs)

nombre vert_exag , facultatif

Degré d'exagération des valeurs d'élévation lors du calcul de l'éclairage. Cela peut être utilisé soit pour corriger les différences d'unités entre le système de coordonnées xy et le système de coordonnées d'élévation (par exemple degrés décimaux par rapport aux mètres) ou pour exagérer ou désaccentuer la topographie.

numéro dx , facultatif

L'espacement x (colonnes) de la grille d' élévation en entrée.

numéro dy , facultatif

L'espacement y (lignes) de la grille d' élévation en entrée.

Des kwargs supplémentaires sont transmis à la fonction *blend_mode*.
Retours :
ndarray

Un tableau (m, n, 3) de flottants compris entre 0 et 1.

Exemples utilisant matplotlib.colors.LightSource#

Exemple d'ombrage

Exemple d'ombrage

Exemple d'ombrage
Rendu ombré et puissance normalisée

Rendu ombré et puissance normalisée

Rendu ombré et puissance normalisée
Filtre AGG

Filtre AGG

Filtre AGG
Ombrage personnalisé dans un tracé de surface 3D

Ombrage personnalisé dans un tracé de surface 3D

Ombrage personnalisé dans un tracé de surface 3D
Ombrage

Ombrage

Ombrage
Ombrage topographique

Ombrage topographique

Ombrage topographique