Python 如何以烛台图的形式读取和绘制时间序列数据文件?

Python 如何以烛台图的形式读取和绘制时间序列数据文件?,python,matplotlib,pandas,time-series,Python,Matplotlib,Pandas,Time Series,这是时间序列数据。 我想读取数据文件并将其绘制为蜡烛图。 事实上,我在谷歌上搜索了一整天都想要的pyghon logic,但我找不到。 如有任何意见,将不胜感激 先谢谢你 2011-11-01 9:00:00, 248.50, 248.95, 248.20, 248.70 2011-11-01 9:01:00, 248.70, 249.00, 248.65, 248.85 2011-11-01 9:02:00, 248.90, 249.25, 248.70, 249.15 2011-11-01

这是时间序列数据。 我想读取数据文件并将其绘制为蜡烛图。 事实上,我在谷歌上搜索了一整天都想要的pyghon logic,但我找不到。 如有任何意见,将不胜感激

先谢谢你

2011-11-01 9:00:00, 248.50, 248.95, 248.20, 248.70 2011-11-01 9:01:00, 248.70, 249.00, 248.65, 248.85 2011-11-01 9:02:00, 248.90, 249.25, 248.70, 249.15 2011-11-01 9:03:00, 249.20, 249.60, 249.10, 249.60 2011-11-01 9:04:00, 249.55, 249.95, 249.50, 249.60 2011-11-01 9:05:00, 249.60, 249.85, 249.55, 249.75 2011-11-01 9:06:00, 249.75, 250.15, 249.70, 249.85 2011-11-01 9:07:00, 249.85, 250.15, 249.80, 250.15 2011-11-01 9:08:00, 250.10, 250.40, 250.00, 250.15 2011-11-01 9:09:00, 250.20, 250.35, 250.10, 250.20 2011-11-01 9:00:00, 248.50, 248.95, 248.20, 248.70 2011-11-01 9:01:00, 248.70, 249.00, 248.65, 248.85 2011-11-01 9:02:00, 248.90, 249.25, 248.70, 249.15 2011-11-01 9:03:00, 249.20, 249.60, 249.10, 249.60 2011-11-01 9:04:00, 249.55, 249.95, 249.50, 249.60 2011-11-01 9:05:00, 249.60, 249.85, 249.55, 249.75 2011-11-01 9:06:00, 249.75, 250.15, 249.70, 249.85 2011-11-01 9:07:00, 249.85, 250.15, 249.80, 250.15 2011-11-01 9:08:00, 250.10, 250.40, 250.00, 250.15 2011-11-01 9:09:00, 250.20, 250.35, 250.10, 250.20
要从剪贴板读入此数据集,请执行以下操作

from pandas import read_clipboard
from matplotlib.dates import date2num
names = ['date', 'open', 'close', 'high', 'low']
df = read_clipboard(sep=',', names=names, parse_dates=['date'])
df['d'] = df.date.map(date2num)
顶级的
pandas.read_csv
功能的工作原理类似于
pandas.read_剪贴板
,前提是此数据位于csv或其他类型的字符分隔文件中

现在开始绘图:

from matplotlib.pyplot import subplots, draw
from matplotlib.finance import candlestick

seconds_per_day = 60 * 60 * 24
fig, ax = subplots()
candlestick(ax, df[['d', 'open', 'close', 'high', 'low']].values, width=1.0 / seconds_per_day)
ax.xaxis_date()
draw()
给予

<> P> >你可以慎重考虑。 有关此链接的详细信息:

。 如果要使用matplotlib实现同样的效果,请查看以下链接:

这里有一个很好的例子:谢谢你的评论。我会检查它。作为一个提示,这个api可能会在1.4中发生变化,如果你使用它,请评论谢谢你,非常感谢Phillip。我将测试它。看起来它已被弃用,并被
candlestick\u ohlc
取代,但除了列的顺序外,它的工作原理基本相同。