1

像标题一样,当我想在单个轴上添加多条线时,我需要放置一个自定义的 zorder,这对于使绘图更好看非常有帮助,但是我得到错误:**

'无法识别的 kwarg="zorder"'

**

该参数由 matplotlib 支持,但似乎不能从 mplfinance 获得,有人知道吗?

请参考以下:

            for i,line in enumerate(my_columns):
                zorder = zorder_list[i]
                ap = mpf.make_addplot(tmp[line], ax=ax, zorder=zorder)

4

1 回答 1

2

zordermplfinance 尚不支持。

有一个增强请求: https ://github.com/matplotlib/mplfinance/issues/311

做其他优先事项,zorder在mplfinance中的实施暂时被推迟了。如果您有兴趣为 mplfinance 贡献此增强功能,我将很乐意指导您完成整个过程和代码。

全面披露:我是 mplfinance 的维护者。


作为一种解决方法(同时),以下方法可能有效:

ap = []
for i,line in enumerate(my_columns):
    ax.zorder = zorder_list[i]
    ap.append(mpf.make_addplot(tmp[line], ax=ax))

但是在我看来,除非您ax为每条线使用不同的变量,否则make_addplot()最终所有addplot线都将具有相同的 zorder,但是即使是这样,它们也可以具有与情节的主要部分不同的 zorder,假设ax是与绘图的主要部分使用的轴不同。

于 2021-12-27T18:14:30.273 回答