文档章节

matplotlib绘制K线图

C
 Claroja
发布于 2017/05/08 23:21
字数 362
阅读 14
收藏 0

获得苹果的股票数据(2016/1/4-2017/4/20)如下表:

Date Open High Low Close
2016/1/4 102.610001 105.370003 102 105.349998
2016/1/5 105.75 105.849998 102.410004 102.709999
2016/1/6 100.559998 102.370003 99.870003 100.699997
2016/1/7 98.68 100.129997 96.43 96.449997
2016/1/8 98.550003 99.110001 96.760002 96.959999

绘制代码:

import matplotlib.pyplot as plt
from matplotlib.dates import DateFormatter, WeekdayLocator,DayLocator, MONDAY
import pandas as pd
import matplotlib.dates as mdates
from matplotlib.finance import candlestick_ohlc
#1.数据预处理
#读取数据
data=pd.read_csv("C:/Users/Administrator/Desktop/APPL/APPL.csv")
#将时间数据转换为pandas的时间格式
data["Date"]=pd.to_datetime(data["Date"])
#将时间数据转换为matplotlib的时间格式
data['Date'] = data['Date'].apply(lambda d: mdates.date2num(d.to_pydatetime()))
#将数据框转换为元组
tuples = [tuple(x) for x in data[['Date','Open','High','Low','Close']].values]

#2.图像设置
#获得fig和ax对象
fig, ax = plt.subplots()
#调节横坐标距离底部的长度
fig.subplots_adjust(bottom=0.2)
#设置横坐标标签的显示时间间隔(显示每周的周一)
mondays = WeekdayLocator(MONDAY)
ax.xaxis.set_major_locator(mondays)
#设置横坐标刻度的显示间隔(每个刻度代表一天)
alldays = DayLocator()
ax.xaxis.set_minor_locator(alldays)
#设置横坐标标签的显示样式,为“月、日”,Jan 12
weekFormatter = DateFormatter('%b %d')
ax.xaxis.set_major_formatter(weekFormatter)
#显示每个刻度的标签
#dayFormatter = DateFormatter('%d')
# ax.xaxis.set_minor_formatter(dayFormatter)

#3.绘图
#烛台图绘制
candlestick_ohlc(ax, tuples, width=0.6,colorup='r',colordown="g")
#调整图像设置横坐标标签的显示样式,获得当前坐标轴plt.gca、获得x轴刻度标签get_xticklabels、转换角度rotation、旋转角度hori...ent
plt.setp(plt.gca().get_xticklabels(), rotation=45, horizontalalignment='right')
plt.show()

结果图:
这里写图片描述

© 著作权归作者所有

共有 人打赏支持
C
粉丝 0
博文 128
码字总数 44892
作品 0
南京
私信 提问
使用matplotlib绘制k线图

利用matplotlib.finance绘制K线图时使用关键要点 绘制k线图的核心语句是: 这其中 ax 是 matploblib 的 axis,matrix_data 是股价数据。 matrixdata 是 np.matrix 对象,对于 candlestickoch...

那未必
2017/10/29
0
0
使用matplotlib绘制k线图(去掉空白日期)

之前研究过使用 matplotlib.finance 中的 candlestick_ohlc() 方法绘制k线图,但是有个很无语的问题,绘制出来的k线不是连续的——周末两天没有被去掉,因此总是留下一个空档。更不要说遇上春...

那未必
2017/11/04
0
0
手把手丨10分钟教你看懂K线图交易策略(附python绘图代码)

大数据文摘作品 编译:大山、笪洁琼、Yawei Xia 对于K线图,相信做交易的朋友都不陌生。本文作者用交单明了的语言解释了三日K线的交易原则,也分享了如何用python绘制K线图的方法和代码。 据...

dzjx2eotaa24adr
01/24
0
0
Python 绘图,我只用 Matplotlib(一)

图片来自 unsplash 当我们的爬虫程序已经完成使命,帮我们抓取大量的数据。你内心也许会空落落的。或许你会疑惑,自己抓取这些数据有啥用?如果要拿去分析,那要怎么分析呢? 说到数据分析,...

猴哥Yuri
2017/11/03
0
0
Matplotlib基础全攻略

Matplotlib是Python中最流行的绘图库,它模仿MATLAB中的绘图风格,提供了一整套与MATLAB相似的绘图API,通过API,我们可以轻松地绘制出高质量的图形。 1、开场例子 我们以中国银行股票收盘价...

技术小能手
07/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS 安装Tomcat

Tomcat 介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 Java 程序写的网站用tomcat+jdk来运...

野雪球
14分钟前
0
0
OSChina 周四乱弹 —— 每天都迟到是种什么样的体验

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @开源中国首席机器人 :《Too Good At Goodbyes (Acoustic) - Sam Smith - 单曲》 《Too Good At Goodbyes (Acoustic) - Sam Smith - 单曲》 ...

小小编辑
19分钟前
37
6
jquery通过id显示隐藏

var $div3 = $('#div3'); 显示 $div3.show(); 隐藏 $div3.hide();

yan_liu
今天
3
0
《乱世佳人》读书笔记及相关感悟3900字

《乱世佳人》读书笔记及相关感悟3900字: 之前一直听「荔枝」,后来不知怎的转向了「喜马拉雅」,一听就是三年。上班的时候听房产,买房了以后听装修,兴之所至时听旅行,分手后听亲密关系,...

原创小博客
今天
3
0
大数据教程(9.6)map端join实现

上一篇文章讲了mapreduce配合实现join,本节博主将讲述在map端的join实现; 一、需求 实现两个“表”的join操作,其中一个表数据量小,一个表很大,这种场景在实际中非常常见,比如“订单日志...

em_aaron
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部