金融数据可视化技术_第1页
金融数据可视化技术_第2页
金融数据可视化技术_第3页
金融数据可视化技术_第4页
金融数据可视化技术_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第2章 金融数据可视化技术2.1 图形对象、对象句柄和句柄图形结构2.2 金融时间序列精确绘图2.1 图形对象、对象句柄和句柄图形结构2.1.1 MATLAB中图形图像基本内容2.1.2 金融时间序列基本绘图函数 直方图 双坐标图 折线图 茎叶图 误差棒形图 多图叠加 并列作图 2.1.1 MATLAB中图形图像基本内容句柄图形是构建MATLAB图形图像系统最重要的元素,属于MATLAB图形系统中的底层系统部分,它所支持的指令可以直接创建线、文字、网线、曲面以及用户界面,也是学习图像用户界面GUI技术的入门。MATLAB中的图形都可以用句柄函数进行修改。MATLAB分底层与高层两个层次的绘图命

2、令。(1)底层(LOW-level)绘图指令:直接对句柄进行操作。 底层绘图指令控制和表现数据图形的能力比高层绘图指令强,优点是灵活多变,缺点在于较难掌握。(2)高层(High-level)绘图指令:建立在底层绘图指令上的绘图指令。1、图形对象 MATLAB中一副图形是由众多图形对象构成的。 图形对象分为父对象与子对象,父对象是子对象的上一级,父对象影响其所有子对象。2、句柄对象 MATLAB中的句柄图形系统以面向对象为基础,一幅图的每个组成部分都是一个对象,每个对象都有一系列句柄相对应,并且通过修改句柄值可以达到修改图像的目的。注意:(1)根屏幕的句柄值总是0,图形窗口值总是一个整数,其他图

3、像句柄总是一个浮点数,在使用时,一般先把句柄值赋给一个变量后再调用。(2)为查找方便一般都用大写字母给句柄命名,相应的对象可以在“h”后面加上描述符,便于识别,句柄可以是单值也可以是矩阵。(3)MATLAB中获得句柄的方式有两种:直接由高级绘图函数和句柄函数获得。 利用句柄函数可以得到现有的图形句柄,也可以查找已经创建的图形对象,并且可以赋值给其他变量,还可以作为输入变量使用,下面是几个函数的调用格式。(1)gco:返回当前对象的句柄。(2)gcf:获得当前图形窗口的句柄。(3)gca:获得当前轴对象的句柄。(4)clf:清除当前图形窗口。(5)close:删除指定的图形窗口。(6)get:获

4、取对象属性。(7)set:设置对象属性。(8)Delete:删除当前图像。3、绘制可视化二维图形2.1.2 金融时间序列基本绘图函数1、收益率与频率直方图 收益率二维直方图的调用函数:bar 收益率三维直方图的调用函数:bar3 频率直方图的调用函数:hist2、双坐标图 在金融时间序列中常常需要把两组数据画在同一张图中,例如两只股票的股价画在同一副图上,Plotyy函数可以实现该功能。Plotty函数是绘制双Y轴曲线函数。3、折线图 折线图的调用函数:stairs4、茎叶图 茎叶图的调用函数:stem5、误差棒形图 误差棒为数据置信水平或者为沿着曲线的偏差。一般沿着一曲线画误差棒形图,调用函

5、数为errorbar。 调用方式1: errorbar(Y,E) 输入参数: Y %画出向量Y,同时显示在向量Y每一元素之上的误差棒,误差棒为E(i)在曲线Y上面与下面的距离,所以误差棒长度为2*E(i) 调用方式2: errorbar(X,Y,E) 输入参数: X,Y,E %必须为同型参量 调用方式3: errorbar(X,Y,L,U) 输入参数: X,Y,L,U %函数中X,Y,L,U必须为同型参量 errorbar(,LineSpec)用LineSpec指定的线型、标记符、颜色等画出误差棒;h= errorbar() 返回线图形对象的句柄向量给h,例如:6、多图叠加 为了达到预期效果,

6、有时需要将多种图像叠加到一副图中。图形叠加需要靠hold on命令完成。 例如:把浦发银行对数收益率折线图与茎叶图叠加在一起。7、并列作图 有时为了比较图与图之间的区别,需要把多个图并列起来做对比,可以调用函数subplot(m,n,k),把多副图排成m行n列子图,k表示其中从左到右编号的第k副子图。 例如:生成两组随机数,分别保存在数组a、b中,然后将这两组数分别作图。2.1.3 修改金融时间序列作图金融时间数据一般为时间序列数据,在绘图时通常要把X轴坐标上的刻度由整数改为日期。 下面用两种方法更改坐标刻度名称。 方法一:手工修改坐标刻度 方法二:利用set函数函数更改图像坐标刻度 例2-6

7、:根据G上港(600018)2006年4月7日至5月22日收盘价做出股价图,然后更改坐标。分析:首先将Excel中的时间、股价数据传给MATLAB中的al变量,注意日期数据变成了整数。EXCEL中的起始时间原点与MATLAB中的起始时间原点相差693960天,需要在MATLAB中加上该整数,转化为MATLAB中的日期。2.2 金融时间序列精确绘图有时图像要求比较高,需要执行许多命令才能完成绘图任务,这就需要编写脚本文件来完成例如:用G上港股票的数据画出股价图,要求给出标题、坐标轴的名称,X轴的刻度为日期,背景添加网格线。1. % plot times.m2. load qq3. plot(a1

8、(:,2)4. hold on;5. plot(a1(:,2)6. axis(1 27 10,14)7. xlabel(时间);8. ylabel(股价); 9. title(G上港2006年4月7日5月22日股价图,Color,r)10. set(gca,XTick,1,5,10,15,20,25,30); % 标出x轴刻度位置11. set(gca,XTickLabel,06-04-07;06-04-13; 06-04-20;06-04-27;.06-05-11; 06-05-18;06-05-25);% 更改图像x轴坐标刻度。12. grid on; % 为图像背景添加网格线grid o

9、ff可以 消除图像中的网格线。 下面对程序中的命令进行讲解:注释1:程序第3句, plot(a1(:,2),plot函数可以对线条的类型和大小进行定义,其注释如下图所示:注释2:程序第7句、第8句, xlabel(时间)、 ylabel(股价),xlabel、ylabel函数的功能是给X、Y轴贴上标签。xlabel(string)的功能是给当前轴对象中的X轴贴标签。注意:若再次执行xlabel命令则新标签会覆盖旧标签。xlabel(fname)先执行函数fname,其返回一个字符串,然后在X轴旁边显示出来。xlabel(,PropertyName, PropertyValue,)指定轴对象中要

10、控制的属性名和要改变的属性值h=xlabel()、 h=ylabel()返回作为标签text对象句柄。 注释3:程序第10句, set(gca,XTick,1,5,10,15,20,25,30),该行语句的作用主要是在X轴上标出刻度位置,如下图所示。注释4:程序第11句的set函数, set(gca,XTickLabel,06-04-07;06-04-13; 06-04-20;06-04-27;.06-05-11; 06-05-18;06-05-25)。该语句的主要可以对X轴坐标刻度进行赋值,由于原来图例中X轴的刻度是整数,为了直观起见需要转化为日期,这样可以明确看到每个交易日的股票收盘价,set函数可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论