Les cartes de couleurs personnalisées permettent une visualisation personnalisée des données. Cet article répond à la requête d'un utilisateur concernant la création de sa propre palette de couleurs qui passe en douceur du rouge au violet en passant par le bleu, mappée à des valeurs comprises entre -2 et 2. L'objectif est de colorer les points de données dans un tracé et d'afficher l'échelle de couleurs qui l'accompagne.
Pour créer une échelle de couleurs continue, une LinearSegmentedColormap est utilisée à la place de la ListedColormap discrète. Une liste de couleurs peut être transmise à la méthode from_list pour générer cette palette de couleurs personnalisée :
import matplotlib.pyplot as plt import matplotlib.colors colors = ["red", "violet", "blue"] cmap = matplotlib.colors.LinearSegmentedColormap.from_list("", colors)
Pour mapper les couleurs aux valeurs des données, une fonction de normalisation est nécessaire. La fonction Normaliser transforme les valeurs en une plage adaptée à la palette de couleurs :
norm = plt.Normalize(-2, 2)
Pour colorer les points du tracé à l'aide de la palette de couleurs personnalisée :
plt.scatter(x, y, c=c, cmap=cmap, norm=norm)
Pour afficher l'échelle de couleurs adjacente au tracé :
plt.colorbar()
La méthode peut être généralisée pour cartographier n'importe quel ensemble de valeurs aux couleurs :
cvals = [-2., -1, 2] colors = ["red", "violet", "blue"] tuples = list(zip(map(norm, cvals), colors)) cmap = matplotlib.colors.LinearSegmentedColormap.from_list("", tuples)
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!