Python可视化Matplotlib-K线图

Posted fangbei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python可视化Matplotlib-K线图相关的知识,希望对你有一定的参考价值。

 

引入类库

import matplotlib as mpl
import tushare as ts
import matplotlib.pyplot as plt
import matplotlib.finance as mpf
from matplotlib import rc
from matplotlib.pylab import date2num
from datetime import datetime, timedelta

设置取k线的时间

today = datetime.now().strftime(%Y-%m-%d)
before = (datetime.now() - timedelta(days = 120)).strftime(%Y-%m-%d) #120自然日,大概80个交易日

获取行情数据

#获取行情数据,格式: pandas.core.frame.DataFrame
code = 000063
tsla_df = ts.get_k_data(code, start = before, end = today)
# print(tsla_df)

 

‘‘‘
蜡烛图的日期,不支持普通的YYYY-MM-DD格式
要使用matplotlib.finance.date2num进行转换为特有的数字值
‘‘‘
qutotes = []
for _, (d, o, c, h, l) in enumerate(
        zip(tsla_df.date, tsla_df.open, tsla_df.close, tsla_df.high, tsla_df.low)):
    d = mpf.date2num(datetime.strptime(d,%Y-%m-%d))
    # 日期,开盘,收盘,最高,最低组成tuple对象val
    val = (d, o, h, l, c)
    # 加val加入qutotes
    qutotes.append(val)

 

fig, ax = plt.subplots(figsize=(15,5))      #设置图片大小
fig.subplots_adjust(bottom=0.5)             #调整画框的位置,用来消除白边

ax.xaxis_date()                             # X轴的刻度为日期
plt.xticks(rotation=45)                     # 设置日期刻度旋转的角度
plt.title(code)                         # 设置图片标题
plt.xlabel(Date)                          # 设置X轴标题
plt.ylabel(Price)                         # 设置Y轴标题
plt.grid(True)                              # 显示网格

mpf.candlestick_ohlc(ax, qutotes, width=0.6, colorup=g, colordown=r, alpha=1.0)
plt.show()

 

技术分享图片

以上是关于Python可视化Matplotlib-K线图的主要内容,如果未能解决你的问题,请参考以下文章

100天精通Python(可视化篇)——第79天:matplotlib绘制不同种类炫酷折线图代码实战(网格趋势对比百分比多条折线堆积百分比堆积多坐标子图3D折线图)

数据可视化应用区域渐变填充折线图(R语言&Python实现)

数据可视化应用区域渐变填充折线图(R语言&Python实现)

python使用matplotlib可视化折线图在可视化图像中同时绘制多条折线图

Python 数据可视化教程 绘制精美的双 Y 轴折线图

可视化实验十二:利用Python绘制箱线图折线图