1.导入数据(数据来源于tushare,tushareID:404775)
import tushare as ts
pro=ts.pro_api('************') #提交token
df=pro.daily(ts_code='600030.SH',start_date='20200901',end_date='20201231') #提交股票代码、开始日期、截止日期
2.整理数据
import pandas as pd
df=df[['trade_date','ts_code', 'open', 'high', 'low', 'close','vol']] #取出需要字段
df=df.rename(columns={'vol':'volume'}) #本文使用mplfinance库绘制K线图,mplfinance库对于成交量数据的命名为volume,tushare命名为vol,因此修改字段名
df['trade_date']=pd.to_datetime(df['trade_date'],format='%Y-%m-%d') #修改日期格式
df=df.sort_values('trade_date') #默认按时间降序排列,改为升序
df=df.set_index('trade_date') #将行标题改为日期
print(df.head()) #打印前5条数据
3.绘制K线图
import mplfinance as mpf
mpf.plot(df,type='candle',mav=(5,10),volume=True,style='charles') #自定义K线图的外观、参数,详情参照官方文档(https://github.com/matplotlib/mplfinance/blob/master/examples/plot_customizations.ipynb)