"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo crear un mapa de colores personalizado y agregar una escala de colores en Matplotlib?

¿Cómo crear un mapa de colores personalizado y agregar una escala de colores en Matplotlib?

Publicado el 2024-11-16
Navegar:221

How to Create a Custom Colormap and Add a Color Scale in Matplotlib?

Creación de un mapa de colores personalizado e incorporación de una escala de colores

Para crear su propio mapa de colores, un enfoque es utilizar la función LinearSegmentedColormap del módulo matplotlib.colors. Este enfoque es más simple y produce una escala de color continua.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors

# Generate random data points
x, y, c = zip(*np.random.rand(30, 3) * 4 - 2)

# Define lower and upper bounds for normalization
norm = plt.Normalize(-2, 2)

# Create a list of tuples representing the values and corresponding colors
tuples = [(norm(-2.), 'red'), (norm(-1.), 'violet'), (norm(2.), 'blue')]

# Generate the colormap from the list of tuples
cmap = matplotlib.colors.LinearSegmentedColormap.from_list('', tuples)

# Plot the data points using the custom colormap
plt.scatter(x, y, c=c, cmap=cmap, norm=norm)

# Add a color scale to the plot
plt.colorbar()
plt.show()

Este fragmento de código crea con éxito un mapa de colores con una transición suave del rojo al violeta y al azul, que va de -2 a 2. La escala de colores también se incorpora a la derecha del gráfico, lo que permite para una fácil interpretación del color.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3