Matplotlib.colors.hsv_to_rgb() en Python

Matplotlib es una increíble biblioteca de visualización en Python para gráficos 2D de arrays. Matplotlib es una biblioteca de visualización de datos multiplataforma basada en arrays NumPy y diseñada para funcionar con la pila SciPy más amplia.

matplotlib.colors.hsv_to_rgb()

La función matplotlib.colors.hsv_to_rgb() se usa para convertir valores hsv a rgb.

Sintaxis: matplotlib.colors.hsv_to_rgb(hsv)

Parámetros:

  • hsv: es un argumento similar a una array en forma de (…, 3) donde se supone que todos los valores están en el rango de 0 a 1.

Devoluciones:

  • rgb: Devuelve un ndarray en forma de (…, 3) que se compone de colores convertidos a valores RGB dentro del rango de 0 a 1.

Ejemplo 1:

import matplotlib.pyplot as plt
import matplotlib.colors
import numpy as np
   
  
# helper function to find 
# mid-points
def helper(z):
      
    k = ()
    for i in range(z.ndim):
        z = (z[k + np.index_exp[:-1]] + z[k + np.index_exp[1:]]) / 2.0
        k += np.index_exp[:]
          
    return z
   
# dummy coordinates with  rgb 
# values attached with each
s, alpha, x = np.mgrid[0:1:11j,
                       0:np.pi*2:25j,
                       -0.5:0.5:11j]
a = s*np.cos(alpha)
b = s*np.sin(alpha)
   
sc, alphac, xc = helper(s), helper(alpha), helper(x)
   
# wobbly torus about [0.7, *, 0]
sphere = (sc - 0.7)**2 + (xc + 0.2*np.cos(alphac*2))**2 < 0.2**2
   
# combining the color components
hsv = np.zeros(sphere.shape + (3,))
hsv[..., 0] = alphac / (np.pi*2)
hsv[..., 1] = sc
hsv[..., 2] = xc + 0.5
   
#the hsv to rgb function
plot_colors = matplotlib.colors.hsv_to_rgb(hsv)
   
# and plot everything
figure = plt.figure()
axes = figure.gca(projection='3d')
  
axes.voxels(a, b, x, sphere,
          facecolors=plot_colors,
          edgecolors=np.clip(2*plot_colors - 0.5, 0, 1), 
          linewidth=0.5)
   
plt.show()

Producción:

Ejemplo 2:

from matplotlib.colors import hsv_to_rgb
  
# sample squares for example
first_square = np.full((50, 50, 3),
                       fill_value ='698', 
                       dtype = np.uint8) / 255.0
  
second_square = np.full((50, 50, 3),
                        fill_value ='385',
                        dtype = np.uint8) / 255.0
  
plt.subplot(1, 2, 1)
plt.imshow(hsv_to_rgb(first_square))
  
plt.subplot(1, 2, 2)
plt.imshow(hsv_to_rgb(second_square))
  
plt.show()

Producción:

Publicación traducida automáticamente

Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *