【发布时间】:2019-09-16 23:36:20
【问题描述】:
我正在尝试使用存储在 CSV 文件和 mpl_finance 库中的一些数据创建烛台图:
前五行如下所示:
Date Open High Low Close Volume
0 2017-08-24 04:00:00.000000 0.002890 0.002890 0.002670 0.002670 371.64
1 2017-08-24 04:05:00.000000 0.002669 0.002669 0.002669 0.002669 4.80
2 2017-08-24 04:10:00.000000 0.002600 0.002649 0.002600 0.002649 61.71
3 2017-08-24 04:15:00.000000 0.002640 0.002640 0.002640 0.002640 20.00
4 2017-08-24 04:20:00.000000 0.002620 0.002620 0.002600 0.002602 92.68
下面是我正在使用的代码:
import pandas as pd
import matplotlib.pyplot as plt
from mpl_finance import candlestick2_ochl
df = pd.read_csv("data.csv")
df["Date"] = pd.to_datetime(df["Date"])
candlestick2_ochl(ax = df["Date"],opens=df["Open"],closes=df["Close"],highs =df["High"],lows = df["Low"])
plt.show()
当我运行此代码时,我收到以下错误:
Traceback (most recent call last):
File "Untitled 5.py", line 16, in <module>
candlestick2_ochl(ax = df["Date"],opens=df["Open"],closes=df["Close"],highs =df["High"],lows = df["Low"])
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/mpl_finance.py", line 552, in candlestick2_ochl
alpha=alpha)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/mpl_finance.py", line 633, in candlestick2_ohlc
ax.update_datalim(corners)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pandas/core/generic.py", line 3614, in __getattr__
return object.__getattribute__(self, name)
AttributeError: 'Series' object has no attribute 'update_datalim'
(PS:我试过在没有df["Date"] = pd.to_datetime(df["Date"]) 的情况下运行代码,但它输出相同的错误)
非常感谢您的帮助!
【问题讨论】:
-
您需要使用
candlestick_ochl而不是candlestick2_ochl才能在轴上显示日期。 -
@ImportanceOfBeingErnest 感谢您的评论!以及如何将日期添加到烛台_ochl?
-
检查一下this answer
标签: python pandas matplotlib plot