python 画K线图,用python画星空,#数据源:http:
python 画K线图,用python画星空,#数据源:http:
#数据源:http://pan.baidu.com/s/1hs5Wn0w
#要求:Matlibplot简单应用
#1.根据数据绘制出2017年6月~8月日线级别的价格走势K线。
#2.将MA5、MA10、MA20叠加至图中
import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport matplotlib.finance as mpfimport datetimefrom matplotlib.pylab import date2numplt.rcParams[‘font.sans-serif‘] = [‘SimHei‘]plt.rcParams[‘axes.unicode_minus‘] = False#读取数据并去掉多余数据data=pd.read_csv(‘000001.SZ.csv‘,encoding=‘gbk‘,index_col=0).iloc[:-2,:4]#将索引调整为datetime格式data.index=pd.to_datetime(data.index)#将分钟数据聚合为日数据data_open=data.loc[:,‘开盘价(元)‘].resample(‘D‘).first().dropna()data_high=data.loc[:,‘最高价(元)‘].resample(‘D‘).max().dropna()data_low=data.loc[:,‘最低价(元)‘].resample(‘D‘).min().dropna()data_close=data.loc[:,‘收盘价(元)‘].resample(‘D‘).last().dropna()#将开盘、收盘、最高、最低数据合并,注意数据顺序,与candlestick_ochl一致new_data=pd.concat([data_open,data_close,data_high,data_low],axis=1)#new_data=new_data.ix[‘2017-06‘:‘2017-08‘];print(new_data)#将日期索引调整到列new_data=new_data.reset_index()#将日期转换为num格式lst=[]for i in range(len(new_data)): lst.append(int(date2num(new_data.iloc[i,0])))new_data[‘日期‘]=lstquotes=np.array(new_data)fig,ax=plt.subplots(figsize=(8,5))mpf.candlestick_ochl(ax,quotes,width=1,colorup=‘g‘,colordown=‘r‘)#分别画出5日、10日、20日均线图new_data.index=new_data[‘日期‘]pd.rolling_mean(new_data[‘收盘价(元)‘],5).plot()pd.rolling_mean(new_data[‘收盘价(元)‘],10).plot()pd.rolling_mean(new_data[‘收盘价(元)‘],20).plot()#将x轴设置为日期,调整x轴日期范围ax.xaxis_date()ax.set_xlim(datetime.datetime(2017,6,1),datetime.datetime(2017,8,31))plt.show()
python 画K线图
相关内容
- python之中国大学爬虫,, 1 #!/usr/
- Python 接口开发-泛微OA的SOAP接口,,一、功能需求泛微
- python测试开发(01-递归函数+内置函数),python递归实例
- 用 Python、 RabbitMQ 和 Nameko 实现微服务,微服务基本框架
- Python中文分词 jieba,,三种分词模式与一个参
- Python minidom模块(DOM写入和解析XML),java有哪些模块,一、
- python常见命令,python代码命令大全,http://www
- Python面试题及答案汇总整理(2019版),,发现网上很多
- Python 入门第二天,,一、编程语言分类1、
- Python 文件 seek() 方法,,概述Python 文
评论关闭