python - matplotlib烛台_ohlc函数上奇怪的随机宽度
问题描述
我使用candlestick_ohlc
matplotlib 绘制短烛台图案,我有width
as的设置0.01
。并且总是画 6 支蜡烛。
大多数情况下,条形图看起来与预期一样,但每张图像中有五分之一(或多或少)是用更大的宽度绘制的,这会破坏图表。
这是我如何使用函数的示例:
candlestick_ohlc(ax1, candles, width=0.01,colorup='green', colordown='red')
以及正在处理的数据示例:
[[7.37151000e+05 1.30622000e+00 1.30658000e+00 1.30597000e+00 1.30610000e+00]
[7.37151010e+05 1.30609000e+00 1.30619000e+00 1.30500000e+00 1.30595000e+00]
[7.37151021e+05 1.30594000e+00 1.30621000e+00 1.30575000e+00 1.30602000e+00]
[7.37151031e+05 1.30603000e+00 1.30644000e+00 1.30603000e+00 1.30632000e+00]
[7.37151042e+05 1.30633000e+00 1.30648000e+00 1.30622000e+00 1.30648000e+00]
[7.37151052e+05 1.30644000e+00 1.30661000e+00 1.30551000e+00 1.30553000e+00]]
[[7.37151010e+05 1.30609000e+00 1.30619000e+00 1.30500000e+00 1.30595000e+00]
[7.37151021e+05 1.30594000e+00 1.30621000e+00 1.30575000e+00 1.30602000e+00]
[7.37151031e+05 1.30603000e+00 1.30644000e+00 1.30603000e+00 1.30632000e+00]
[7.37151042e+05 1.30633000e+00 1.30648000e+00 1.30622000e+00 1.30648000e+00]
[7.37151052e+05 1.30644000e+00 1.30661000e+00 1.30551000e+00 1.30553000e+00]
[7.37151062e+05 1.30553000e+00 1.30590000e+00 1.30529000e+00 1.30573000e+00]]
[[7.37151060e+05 1.30561000e+00 1.30561000e+00 1.30549000e+00 1.30551000e+00]
[7.37151060e+05 1.30550000e+00 1.30568000e+00 1.30550000e+00 1.30568000e+00]
[7.37151061e+05 1.30565000e+00 1.30580000e+00 1.30562000e+00 1.30580000e+00]
[7.37151062e+05 1.30580000e+00 1.30583000e+00 1.30578000e+00 1.30578000e+00]
[7.37151062e+05 1.30579000e+00 1.30590000e+00 1.30566000e+00 1.30573000e+00]
[7.37151063e+05 1.30573000e+00 1.30574000e+00 1.30550000e+00 1.30561000e+00]]
解决方案
正如 ImportanceOfBeingErnest 所说:“在那些不起作用的情况下,您需要进一步减小宽度。更准确地说,宽度不应大于两个连续 x 数据点之间的差异。”
也就是说,有一个新版本的 matplotlib Finance 可以自动为您处理这个问题。您可以在此处找到新版本以及文档:
https://pypi.org/project/mplfinance/
安装: pip install --upgrade mplfinance
注意:包名不再有破折号或下划线:现在是 mplfinance(不是 mpl-finance,也不是 mpl_finance)
推荐阅读
- javascript - reactjs 表单:使用两个提交按钮为同一个表单执行两个不同的任务
- amazon-rds - 如何在没有循环依赖的情况下使用 CDK 将安全组添加到现有 RDS
- jquery - 重新加载后带有特殊字符的jqGrid过滤器问题
- python - matplotlib 轴刻度标签在导出到 pgf 时上下移动
- c++ - int 类型数组的名称和 char 类型的数组名称有什么区别?(在 C++ 中)
- git - wsl: git pull 暂时认为有局部变化
- python - 希望使用多个嵌套块在 Python 中导出 JSON
- c# - 为什么在离开方法之前使用变量会自行处理?
- c# - SQL Azure 数据库 - 令人困惑的错误消息 - SQL Server
- python - 使用 css 使 Gtk 窗口透明