matplotlib.colores.LightSource #
- clase matplotlib.colores. Fuente de luz ( azdeg = 315 , altdeg = 45 , hsv_min_val = 0 , hsv_max_val = 1 , hsv_min_sat = 1 , hsv_max_sat = 0 ) [fuente] #
Bases:
object
Cree una fuente de luz procedente del acimut y la elevación especificados. Los ángulos están en grados, con el azimut medido en el sentido de las agujas del reloj desde el norte y la elevación desde el plano cero de la superficie.
shade
se utiliza para producir valores rgb "sombreados" para una matriz de datos.shade_rgb
se puede utilizar para combinar una imagen rgb con un mapa de elevación.hillshade
produce un mapa de iluminación de una superficie.Especifique el acimut (medido en el sentido de las agujas del reloj desde el sur) y la altitud (medida desde el plano de la superficie) de la fuente de luz en grados.
- Parámetros :
- azdeg float, predeterminado: 315 grados (desde el noroeste)
El acimut (0-360, grados en el sentido de las agujas del reloj desde el norte) de la fuente de luz.
- altdeg float, predeterminado: 45 grados
La altitud (0-90, grados por encima de la horizontal) de la fuente de luz.
notas
Para compatibilidad con versiones anteriores, los parámetros hsv_min_val , hsv_max_val , hsv_min_sat y hsv_max_sat también se pueden proporcionar en la inicialización. Sin embargo, estos parámetros solo se usarán si se pasa "blend_mode='hsv'" a
shade
oshade_rgb
. Consulte la documentación parablend_hsv
obtener más detalles.- blend_hsv ( rgb , intensidad , hsv_max_sat = Ninguno , hsv_max_val = Ninguno , hsv_min_val = Ninguno , hsv_min_sat = Ninguno ) [fuente] #
Tome la matriz de datos de entrada, conviértala a valores HSV en el mapa de colores dado, luego ajuste esos valores de color para dar la impresión de un mapa en relieve sombreado con una fuente de luz específica. Se devuelven los valores RGBA, que luego se pueden usar para trazar la imagen sombreada con imshow.
El color de la imagen resultante se oscurecerá al mover los valores (s, v) (en el espacio de color hsv) hacia (hsv_min_sat, hsv_min_val) en las regiones sombreadas, o se aclarará al deslizar (s, v) hacia (hsv_max_sat, hsv_max_val) en regiones que están iluminadas. Los extremos predeterminados se eligen de modo que los puntos completamente sombreados sean casi negros (s = 1, v = 0) y los puntos completamente iluminados sean casi blancos (s = 0, v = 1).
- Parámetros :
- norma rgb
Una matriz MxNx3 RGB de flotadores que van de 0 a 1 (imagen en color).
- ndarray de intensidad
Una matriz MxNx1 de flotantes que van de 0 a 1 (imagen en escala de grises).
- número hsv_max_sat , predeterminado: 1
El valor máximo de saturación al que el mapa de intensidad puede cambiar la imagen de salida.
- número hsv_min_sat , opcional
El valor de saturación mínimo al que el mapa de intensidad puede cambiar la imagen de salida. El valor predeterminado es 0.
- número hsv_max_val , opcional
El valor máximo ("v" en "hsv") al que el mapa de intensidad puede cambiar la imagen de salida. El valor predeterminado es 1.
- número hsv_min_val , opcional
El valor mínimo ("v" en "hsv") al que el mapa de intensidad puede cambiar la imagen de salida. El valor predeterminado es 0.
- Devoluciones :
- ndarray
Una matriz MxNx3 RGB que representa las imágenes combinadas.
- blend_overlay ( rgb , intensidad ) [fuente] #
Combine una imagen rgb con un mapa de intensidad utilizando la combinación de "superposición".
- Parámetros :
- norma rgb
Una matriz MxNx3 RGB de flotadores que van de 0 a 1 (imagen en color).
- ndarray de intensidad
Una matriz MxNx1 de flotantes que van de 0 a 1 (imagen en escala de grises).
- Devoluciones :
- ndarray
Una matriz MxNx3 RGB que representa las imágenes combinadas.
- blend_soft_light ( rgb , intensidad ) [fuente] #
Combine una imagen rgb con un mapa de intensidad usando la combinación de "luz suave", usando la fórmula "pegtop".
- Parámetros :
- norma rgb
Una matriz MxNx3 RGB de flotadores que van de 0 a 1 (imagen en color).
- ndarray de intensidad
Una matriz MxNx1 de flotantes que van de 0 a 1 (imagen en escala de grises).
- Devoluciones :
- ndarray
Una matriz MxNx3 RGB que representa las imágenes combinadas.
- dirección de la propiedad #
La dirección del vector unitario hacia la fuente de luz.
- sombreado ( elevación , vert_exag = 1 , dx = 1 , dy = 1 , fracción = 1.0 ) [fuente] #
Calcule la intensidad de iluminación de una superficie utilizando el acimut y la elevación definidos para la fuente de luz.
Esto calcula los vectores normales para la superficie y luego los pasa a
shade_normals
- Parámetros :
- elevación 2D similar a una matriz
Los valores de altura utilizados para generar un mapa de iluminación.
- número vert_exag , opcional
La cantidad para exagerar los valores de elevación al calcular la iluminación. Esto se puede utilizar para corregir las diferencias en las unidades entre el sistema de coordenadas xy y el sistema de coordenadas de elevación (por ejemplo, grados decimales frente a metros) o para exagerar o restar importancia a los efectos topográficos.
- número de diagnóstico , opcional
El espaciado x (columnas) de la cuadrícula de elevación de entrada.
- número dy , opcional
El espaciado y (filas) de la cuadrícula de elevación de entrada.
- número de fracción , opcional
Aumenta o disminuye el contraste del sombreado. Los valores mayores que uno harán que los valores intermedios se acerquen más a la iluminación total o a la sombra (y recortarán cualquier valor que se mueva más allá de 0 o 1). Tenga en cuenta que esto no es visual ni matemáticamente lo mismo que la exageración vertical.
- Devoluciones :
- ndarray
Una matriz 2D de valores de iluminación entre 0 y 1, donde 0 está completamente en la sombra y 1 está completamente iluminado.
- sombra ( datos , cmap , norma = Ninguno , blend_mode = 'superposición' , vmin = Ninguno , vmax = Ninguno , vert_exag = 1 , dx = 1 , dy = 1 , fracción = 1 , ** kwargs ) [fuente] #
Combine valores de datos en mapas de colores con un mapa de intensidad de iluminación (también conocido como "sombreado") de los valores.
- Parámetros :
- datos 2D tipo matriz
Los valores de altura utilizados para generar un mapa sombreado.
- cmap
Colormap
El mapa de colores utilizado para colorear la matriz de datos . Tenga en cuenta que debe ser una
Colormap
instancia. Por ejemplo, en lugar de pasarcmap='gist_earth'
, utilice en sucmap=plt.get_cmap('gist_earth')
lugar.- instancia de norma
Normalize
, opcional La normalización utilizada para escalar valores antes del mapeo de colores. Si es Ninguno, la entrada se escalará linealmente entre su mínimo y máximo.
- blend_mode {'hsv', 'overlay', 'soft'} o invocable, opcional
El tipo de combinación que se utiliza para combinar los valores de los datos del mapa de colores con la intensidad de la iluminación. El valor predeterminado es "superposición". Tenga en cuenta que para la mayoría de las superficies topográficas, "superposición" o "suave" parecen más realistas visualmente. Si se proporciona una función definida por el usuario, se espera que combine una matriz RGB MxNx3 de flotantes (de 0 a 1) con una matriz de sombreado MxNx1 (también de 0 a 1). (Firma de llamada ) Los kwargs adicionales proporcionados a esta función se pasarán a la función blend_mode .
func(rgb, illum, **kwargs)
- vmin float o Ninguno, opcional
El valor mínimo utilizado en los datos de asignación de color . Si Ninguno , se utiliza el valor mínimo en los datos . Si se especifica norma , se ignorará este argumento.
- vmax float o Ninguno, opcional
El valor máximo utilizado en los datos de asignación de color . Si Ninguno , se utiliza el valor máximo en datos . Si se especifica norma , se ignorará este argumento.
- número vert_exag , opcional
La cantidad para exagerar los valores de elevación al calcular la iluminación. Esto se puede utilizar para corregir las diferencias en las unidades entre el sistema de coordenadas xy y el sistema de coordenadas de elevación (por ejemplo, grados decimales frente a metros) o para exagerar o restar importancia a la topografía.
- número de diagnóstico , opcional
El espaciado x (columnas) de la cuadrícula de elevación de entrada.
- número dy , opcional
El espaciado y (filas) de la cuadrícula de elevación de entrada.
- número de fracción , opcional
Aumenta o disminuye el contraste del sombreado. Los valores mayores que uno harán que los valores intermedios se acerquen más a la iluminación total o a la sombra (y recortarán cualquier valor que se mueva más allá de 0 o 1). Tenga en cuenta que esto no es visual ni matemáticamente lo mismo que la exageración vertical.
- Se pasan kwargs adicionales a la función *blend_mode*.
- Devoluciones :
- ndarray
Una matriz MxNx4 de flotantes que oscilan entre 0 y 1.
- shade_normals ( normales , fracción = 1.0 ) [fuente] #
Calcule la intensidad de iluminación para los vectores normales de una superficie utilizando el acimut y la elevación definidos para la fuente de luz.
Imagina un sol artificial colocado en el infinito en alguna posición de azimut y elevación iluminando nuestra superficie. Las partes de la superficie que se inclinan hacia el sol deberían iluminarse, mientras que los lados que miran hacia el otro lado deberían oscurecerse.
- Parámetros :
- número de fracción , opcional
Aumenta o disminuye el contraste del sombreado. Los valores mayores que uno harán que los valores intermedios se acerquen más a la iluminación total o a la sombra (y recortarán cualquier valor que se mueva más allá de 0 o 1). Tenga en cuenta que esto no es visual ni matemáticamente lo mismo que la exageración vertical.
- Devoluciones :
- ndarray
Una matriz 2D de valores de iluminación entre 0 y 1, donde 0 está completamente en la sombra y 1 está completamente iluminado.
- shade_rgb ( rgb , elevación , fracción = 1.0 , blend_mode = 'hsv' , vert_exag = 1 , dx = 1 , dy = 1 , ** kwargs ) [fuente] #
Use esta fuente de luz para ajustar los colores de la matriz de entrada rgb para dar la impresión de un mapa en relieve sombreado con la elevación dada .
- Parámetros :
- tipo matriz rgb
Una matriz RGB (M, N, 3), que se supone que está en el rango de 0 a 1.
- tipo matriz de elevación
Una matriz (M, N) de los valores de altura utilizados para generar un mapa sombreado.
- número de fracción
Aumenta o disminuye el contraste del sombreado. Los valores mayores que uno harán que los valores intermedios se acerquen más a la iluminación total o a la sombra (y recortarán cualquier valor que se mueva más allá de 0 o 1). Tenga en cuenta que esto no es visual ni matemáticamente lo mismo que la exageración vertical.
- blend_mode {'hsv', 'overlay', 'soft'} o invocable, opcional
El tipo de combinación que se utiliza para combinar los valores de los datos del mapa de colores con la intensidad de la iluminación. Por compatibilidad con versiones anteriores, el valor predeterminado es "hsv". Tenga en cuenta que para la mayoría de las superficies topográficas, "superposición" o "suave" parecen más realistas visualmente. Si se proporciona una función definida por el usuario, se espera que combine una matriz RGB MxNx3 de flotantes (de 0 a 1) con una matriz de sombreado MxNx1 (también de 0 a 1). (Firma de llamada ) Los kwargs adicionales proporcionados a esta función se pasarán a la función blend_mode .
func(rgb, illum, **kwargs)
- número vert_exag , opcional
La cantidad para exagerar los valores de elevación al calcular la iluminación. Esto se puede utilizar para corregir las diferencias en las unidades entre el sistema de coordenadas xy y el sistema de coordenadas de elevación (por ejemplo, grados decimales frente a metros) o para exagerar o restar importancia a la topografía.
- número de diagnóstico , opcional
El espaciado x (columnas) de la cuadrícula de elevación de entrada.
- número dy , opcional
El espaciado y (filas) de la cuadrícula de elevación de entrada.
- Se pasan kwargs adicionales a la función *blend_mode*.
- Devoluciones :
- ndarray
Una matriz (m, n, 3) de flotadores que oscilan entre 0 y 1.
Ejemplos usando matplotlib.colors.LightSource
#
Representación sombreada y potencia normalizada
Sombreado personalizado en un gráfico de superficie 3D