Maison > développement back-end > Tutoriel Python > Comment coder par couleur les catégories de nuages ​​de points dans Matplotlib ?

Comment coder par couleur les catégories de nuages ​​de points dans Matplotlib ?

Susan Sarandon
Libérer: 2024-10-17 16:39:02
original
300 Les gens l'ont consulté

How to Color-Code Scatter Plot Categories in Matplotlib?

Comment tracer différentes couleurs pour différents niveaux catégoriels dans Matplotlib

Problème

Étant donné un DataFrame avec des variables catégorielles, vous souhaitez créer un nuage de points où chaque catégorie a sa propre couleur.

Solution avec Matplotlib

Pour spécifier les couleurs des différentes catégories dans Matplotlib, utilisez l'argument c dans plt.scatter. Cet argument accepte un tableau de couleurs ou un mappage qui mappe les catégories aux couleurs.

Voici un exemple :

<code class="python">import matplotlib.pyplot as plt
import pandas as pd

# Define a DataFrame
df = pd.DataFrame({'category': ['A', 'B', 'C'], 'value': [10, 20, 30]})

# Create the scatter plot
colors = {'A': 'red', 'B': 'green', 'C': 'blue'}
plt.scatter(df['category'], df['value'], c=df['category'].map(colors))
plt.show()</code>
Copier après la connexion

Ce code attribue des couleurs rouge, verte et bleue aux catégories « A » , 'B' et 'C', respectivement.

DataFrame GroupBy et Plotting

Vous pouvez également utiliser DataFrame.groupby() et .plot() pour obtenir le même résultat :

<code class="python">fig, ax = plt.subplots(figsize=(6, 6))

df.groupby('category').plot(ax=ax, kind='scatter', x='category', y='value', color=colors)
plt.show()</code>
Copier après la connexion

Ce code suppose l'existence d'un dictionnaire de couleurs qui mappe les catégories aux 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!

source:php
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal