我必须从2个df中画出2个子图,它们有不同的列。我想得到包含这两个列的公共图例,类似于下面的示例。在
d1 = pd.DataFrame({ #without one
'two' : [-1.,- 2.,- 3., -4.],
'three' : [4., 3., 2., 1.],
'four' : [4., 3., 4., 3.]})
tot_1=d1.sum(axis=1)
d2 = pd.DataFrame({'one' : [1., 2., 3., 4.],
'two' : [4., 3., 3., 1.],
'three' : [-1., -1., -3., -4.],
'four' : [4., 3., 2., 1.]})
tot_2=d2.sum(axis=1)
fig, ax = plt.subplots(nrows=2, ncols=1)
#plot 1
d1.plot.area(stacked=True,legend=False,ax=ax[0])
tot_1.plot(linestyle='-', color='black',legend=False,ax=ax[0])
###SECOND GRAPH####
ax3 = ax[1].twiny()
#plot 2
d2.plot.area(stacked=True,legend=False,ax=ax[1],sharex=ax[0])
tot_2.plot(linestyle='-',color='black',legend=False,ax=ax[1])
plt.show()
问题是两个数据帧/绘图中的列不完全相同(有些数据帧/绘图中的列相同),应确保图例包含所有列,两个图中的颜色以及图例匹配。在
如果我可以为每一列选择颜色,例如使用一个带有col_name:color
的字典来传递,那就更好了(但不是必需的)
您确实可以使用
column-name:color
对的字典来给补丁着色,然后从中创建一个图例。在相关问题 更多 >
编程相关推荐