web-dev-qa-db-fra.com

Comment puis-je superposer deux graphiques dans Seaborn?

Comment puis-je superposer deux graphiques dans Seaborn? J'ai deux colonnes dans mes données, je voudrais les avoir dans le même graphique. Comment puis-je le faire en préservant l'étiquetage pour les deux graphiques.

23

la fonction maritime qui opère sur un seul axe peut en prendre un comme argument.

Par exemple, les documents à seaborn.kdeplot comprennent:

ax : matplotlib axis, optional
    Axis to plot on, otherwise uses current axis

Donc si vous l'avez fait:

df = function_to_load_my_data()
fig, ax = plt.subplots()

Vous pourriez alors faire:

seaborn.kdeplot(df['col1'], ax=ax)
seaborn.kdeplot(df['col2'], ax=ax)
35
Paul H

Une solution consiste à introduire un axe sécordaire:

    fig, ax = plt.subplots()
    sb.regplot(x='round', y='money', data=firm, ax=ax)
    ax2 = ax.twinx()
    sb.regplot(x='round', y='dead', data=firm, ax=ax2, color='r')
    sb.plt.show()

enter image description here

17

Les données concernent les données de collage privées vs publiques mais fonctionnent, comme nous pouvons le voir, nous chargeons tous les paramètres globaux dans un objet marin et plus tard, nous mappons les graphiques dans le même volet.

import seaborn as sns

import matplotlib.pyplot as plt

import pandas as pd


df = pd.read_csv('College_Data',index_col=0)

g = sns.FacetGrid(df,hue='Private',palette='coolwarm',size=6,aspect=2)

g.map(plt.hist,'Outstate',bins=20,alpha=0.7)

Voir le graphique

1
Omar Villa