Python 将直线图重叠到熊猫图中的水平条形图

Python 将直线图重叠到熊猫图中的水平条形图,python,pandas,plot,bar-chart,Python,Pandas,Plot,Bar Chart,我正在尝试将熊猫中的线条图与水平条形图重叠 有这样一个数据帧 data = pd.DataFrame(np.random.randint(0,100,size=(10, 4)), columns=list('ABCD')) 我可以将绘图重叠到条形图,如下所示: ax = data[['A','B','C']].plot(kind='bar', stacked=True) data['D'].plot(color='k',ax=ax) 有了这个结果 但当我尝试使用水平条形图时 ax = da

我正在尝试将熊猫中的线条图与水平条形图重叠

有这样一个数据帧

data = pd.DataFrame(np.random.randint(0,100,size=(10, 4)), columns=list('ABCD'))
我可以将绘图重叠到条形图,如下所示:

ax = data[['A','B','C']].plot(kind='bar', stacked=True)
data['D'].plot(color='k',ax=ax)
有了这个结果

但当我尝试使用水平条形图时

ax = data['D'].plot(color='k')
data[['A','B','C']].plot(kind='barh', stacked=True, ax=ax)
我有这个结果

如何翻转折线图,使其与barh图一致=


谢谢你的提示

您可以按如下方式重置索引和绘图。这里,我使用
D
列的值作为x值,使用
索引
(值的范围)作为y值。通过使用
reset_index()
可以添加一列索引,这使得使用
y='index'
进行打印变得简单

import pandas as pd
data = pd.DataFrame(np.random.randint(0,100,size=(10, 4)), columns=list('ABCD')).reset_index()
ax = data.plot(x='D', y='index', color='k', legend=False)
data[['A','B','C']].plot(kind='barh', stacked=True, ax=ax)
输出