Maison >développement back-end >Tutoriel Python >Comment créer une palette de couleurs personnalisée et ajouter une échelle de couleurs dans Matplotlib ?

Comment créer une palette de couleurs personnalisée et ajouter une échelle de couleurs dans Matplotlib ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-13 05:24:02461parcourir

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

Création d'une carte de couleurs personnalisée et incorporation d'une échelle de couleurs

Pour créer votre propre carte de couleurs, une approche consiste à utiliser la fonction LinearSegmentedColormap du module matplotlib.colors. Cette approche est plus simple et produit une échelle de couleurs continue.

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()

Cet extrait de code crée avec succès une palette de couleurs avec une transition douce du rouge au violet en passant par le bleu, allant de -2 à 2. L'échelle de couleurs est également incorporé à droite de l'intrigue, permettant une interprétation facile des couleurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn