我正在尝试用烛台创建一个简单的图。为此,我从 Yahoo 获取数据并使用函数 candlestick2_ohlc 绘制它。目标是使用导出 jpg 文件中的图像。
这是我使用的代码:
from pandas_datareader import data
import matplotlib.pyplot as plt
from mpl_finance import candlestick2_ohlc
import matplotlib.dates as mdates
import fix_yahoo_finance as yf
import datetime
start = datetime.date(2018, 1, 1)
end = datetime.date.today()
aapl = yf.download("AAPL",start,end)
aapl.reset_index(inplace=True)
aapl['Date'] = aapl.index.map(mdates.date2num)
fig, ax = plt.subplots()
plt.xlabel("Date")
plt.ylabel("Price")
candlestick2_ohlc(ax, aapl.Open, aapl.High, aapl.Low, aapl.Close, width=1, colorup='g')
plt.savefig('my_figure.png')
plt.show()
我的第一个问题是:还有另一种简单的方法吗?你能给我一个处理财务数据的例子吗?我通常在 R 中使用 quantmod。
第二个问题是:在我的示例中,X 轴中没有日期。我该怎么做才能在 X 轴上显示带有日期的情节?我应该将 Date 转换为 AX 格式,但我不知道一个简单的方法来做到这一点。
谢谢
原文由 Alberto Aguilera 发布,翻译遵循 CC BY-SA 4.0 许可协议
有很多方法可以使用不同的包在 python 中绘制烛台,例如:
您还可以使用
matplotlib
包创建您自己的专用版本的烛台。财务组合
您可以使用以下命令安装该软件包:
然后,您应该按以下方式使用它:
DatetimeIndex
格式。High
,Open
,Close
andLow
. (区分大小写)Volume
命名列。PS 1: 您可以使用 pandas
to_datetime
方法创建 DatetimeIndex。 PS 2: 您可以使用数据框上的rename
方法重命名列。样本:
plotly 包
首先你需要安装
plotly
包使用:然后,您可以像以下代码一样简单地绘制蜡烛图:
finplot 包
您可以使用以下命令安装 finplot 包:
然后,构建烛台图真的很容易。
例子: