Coloration des nuages de points par valeurs de colonne en Python
La polyvalence de ggplot2 dans R permet une affectation transparente des couleurs aux points de données en fonction de la colonne valeurs. Cette fonctionnalité peut également être répliquée en Python à l'aide des dataframes pandas et de Matplotlib.
Utilisation de Pandas et Matplotlib
Pour mapper les couleurs aux valeurs dans Matplotlib, envisagez les étapes suivantes :
Voici un exemple d'implémentation :
def dfScatter(df, xcol='Height', ycol='Weight', catcol='Gender'):
fig, ax = plt.subplots()
categories = np.unique(df[catcol])
colors = np.linspace(0, 1, len(categories))
colordict = dict(zip(categories, colors))
df["Color"] = df[catcol].apply(lambda x: colordict[x])
ax.scatter(df[xcol], df[ycol], c=df.Color)
return fig
Exemple d'utilisation
Considérons un cadre de données avec des colonnes Taille, Poids et Sexe. Pour créer un nuage de points dans lequel les couleurs sont attribuées en fonction de la colonne Sexe :
df = pd.DataFrame({'Height':np.random.normal(size=10),
'Weight':np.random.normal(size=10),
'Gender': ["Male","Male","Unknown","Male","Male",
"Female","Did not respond","Unknown","Female","Female"]})
fig = dfScatter(df)
Cela générera un nuage de points où la colonne Sexe détermine la couleur de chaque point de données.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3