Pandas 熊猫中两个数据帧的瀑布图
我有两个数据帧,它们的行和列完全相同。 df1显示模式的百分比百分比:Pandas 熊猫中两个数据帧的瀑布图,pandas,dataframe,waterfall,Pandas,Dataframe,Waterfall,我有两个数据帧,它们的行和列完全相同。 df1显示模式的百分比百分比: pt car bike walk Equilibrium 28.80 36.82 3.55 30.83 No information 28.80 36.82 3.55 30.83 start 28.82 36.83 3.55 30.80 Equilibrium2
pt car bike walk
Equilibrium 28.80 36.82 3.55 30.83
No information 28.80 36.82 3.55 30.83
start 28.82 36.83 3.55 30.80
Equilibrium2 28.51 36.95 3.56 30.98
df2是行程时间(分钟)
我希望有这样一个图表,x轴显示模式百分比(df1),Y轴显示每个列名的行程时间(df2),例如:
让我们试着用底部绘制条形图:
colors = [f'C{i}' for i in range(4)]
fig, axes = plt.subplots(2,2, figsize=(8,8))
for idx, ax in zip(df1.index, axes.ravel()):
s1, s2 = df1.loc[idx].cumsum(),df2.loc[idx].cumsum()
ax.bar(s1.shift(fill_value=0),df2.loc[idx],width=df1.loc[idx],
bottom=s2.shift(fill_value=0), align='edge', color=colors)
ax.set_title(idx)
fig.tight_layout()
输出:
让我们试着用底部绘制条形图:
colors = [f'C{i}' for i in range(4)]
fig, axes = plt.subplots(2,2, figsize=(8,8))
for idx, ax in zip(df1.index, axes.ravel()):
s1, s2 = df1.loc[idx].cumsum(),df2.loc[idx].cumsum()
ax.bar(s1.shift(fill_value=0),df2.loc[idx],width=df1.loc[idx],
bottom=s2.shift(fill_value=0), align='edge', color=colors)
ax.set_title(idx)
fig.tight_layout()
输出:
谢谢,您是否也可以在方框内添加每个轴的值请参见更新以了解颜色。有些框太小,无法放入任何文本。我看到了,不错,水平线和垂直线呢?这有助于理解确切的数量文件“”,第1行颜色=[f'C{i}表示范围(4)]^SyntaxError:invalid syntaxIt是有效的python 3语法。我猜您正在使用Python 2。请根据您的喜好定义颜色。谢谢,您还可以在方框内添加每个轴的值吗?请参阅颜色更新。有些框太小,无法放入任何文本。我看到了,不错,水平线和垂直线呢?这有助于理解确切的数量文件“”,第1行颜色=[f'C{i}表示范围(4)]^SyntaxError:invalid syntaxIt是有效的python 3语法。我猜您正在使用Python 2。请根据您的喜好定义颜色。