tiempo real matrices graficos grafico graficas graficar encimar ejes como codigos barras python seaborn

python - real - ¿Cómo puedo superponer dos gráficos en Seaborn?



matplotlib python (4)

¿Cómo puedo superponer dos gráficos en Seaborn? Tengo dos columnas en mis datos y me gustaría tenerlas en el mismo gráfico. ¿Cómo puedo hacerlo conservando el etiquetado para ambos gráficos?


El ejemplo más simple sería:

import seaborn as sns import matplotlib.pyplot as plt data1 = [1, 2, 3, 4, 5] data2 = [1, 1.1, 1.3, 4, 4.1] def plotter(): plt.plot(data1) plt.plot(data2) plt.show() plotter()


La función marítima que opera en un solo eje puede tomar uno como argumento.

Por ejemplo, los documentos a seaborn.kdeplot incluyen:

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

Así que si lo hiciste:

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

Entonces podrías hacer:

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


Los datos se refieren a datos de collage Privado y Público, pero funcionan, como podemos ver, cargamos todos los parámetros globales en un objeto marino y luego mapeamos los gráficos en el mismo panel.

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)

Ve la tabla


Una solución es introducir un eje secordario:

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