【发布时间】:2020-09-07 13:27:23
【问题描述】:
我正在尝试用线图覆盖堆积条形图。在 vscode jupyter notebook 中运行 pandas 0.25.3。我已经使用下面相对标准的方式用不同的数据集绘制了很多次 - 但在这种情况下,我只绘制了后一个 matplot 对象
fig, ax = plt.subplots()
ax2=ax.twinx()
df1.plot(kind='bar',stacked=True, ax=ax)
df2.plot(ax=ax2,linestyle='-', marker='o')
df1 和 df2 按设计具有相同的索引。我还尝试合并这些以防万一这是驱动问题以及使用secondary_y的组合,将ax2对象设置为matplot对象。我也尝试了以下工作,并尝试简化为主轴上的条形图。次要和主要折线图也可以很好地绘制,因此基础数据没有问题(nan free 等)
pandas DataFrame how to mix bar and line plots with different scales
数据为如下形式(连接时)- 其中 col3 是线图,col1 和 col2 是堆叠条形
idx col1 col2 col3
1.0 0.2 0.8 0.6
2.0 0.1 0.9 0.52
3.0 0.1 0.9 0.5
4.0 0.05 0.95 0.43
这个网站上有很多类似的问题,但它们往往更适合初学者。我错过了版本兼容性问题吗?我之前在 30 秒内写过这个情节,但花了太多时间试图找出这里的问题。有人见过这个吗?
【问题讨论】:
-
我也确实看到了,但似乎不是解决方案。稍微把我的头发拉出来。
-
样本数据是否代表您的实际数据?具体来说,您的数据是否有时间索引?如果没有,您的数据中有多少行?
-
数据具有代表性——8行13列。索引是浮动的。前 12 列总和为 1 (100%),最后一列是衰减函数 0。
-
在这里更新 - 我最终通过将索引设置为 str 类型来绘制它!
标签: pandas matplotlib