Solución:
Aquí hay una solución, aunque estoy seguro de que debe haber una mejor manera de hacerlo. los series.fillna(0)
parte reemplaza cualquier nan
con 0.
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
plot_chart(df, fig, ax)
ind = arange(df.shape[0])
ax.barh(ind, df['EndUse_91_1.0'], color="#FFFF00")
lefts = df['EndUse_91_1.0'].fillna(0)
ax.barh(ind, df['EndUse_91_nan'], color="#FFFF00", left=lefts)
lefts = lefts + df['EndUse_91_1.0'].fillna(0)
ax.barh(ind, df['EndUse_80_1.0'], color="#0070C0", left=lefts)
lefts = lefts + df['EndUse_91_1.0'].fillna(0)
ax.barh(ind, df['EndUse_80_nan'], color="#0070C0", left=lefts)
plt.show()
Dado que está utilizando pandas, vale la pena mencionar que puede hacer diagramas de barras apiladas de forma nativa:
df2.plot(kind='bar', stacked=True)
Consulte la sección de visualización de los documentos.
Hubo otra buena respuesta, aquí en Stack Overflow. ¡Dibuja las Hbars mientras las agrega en una lista! Ve a responder.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)