SAS讲义_第二十一课条形图、圆饼图和星形图.doc_第1页
SAS讲义_第二十一课条形图、圆饼图和星形图.doc_第2页
SAS讲义_第二十一课条形图、圆饼图和星形图.doc_第3页
SAS讲义_第二十一课条形图、圆饼图和星形图.doc_第4页
SAS讲义_第二十一课条形图、圆饼图和星形图.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

第二十一课 条形图、圆饼图和星形图与PLOT过程和GPLOT过程的关系一样,PROC CHART过程是用来画易生成的低分辩率的图形,输出在OUTPUT窗口。而PROC GCHART过程是用来生成定制的、高分辨率的图形,输出在GRAPH窗口。在这里我们将只介绍GCHART过程。使用GCHART图表可以形象地表示变量的取值大小和两个以上变量之间的关系。可以绘制垂直和水平的条形图、块形图、圆饼图、星形图等。一. PROC GCHART过程的功能和语句说明GCHART过程不仅能把输入数据集中的变量值以各种图形的方式显示出来,而且能把输入数据集中的一个或多个变量按分组进行各种统计计算,然后再把统计结果以图形的方式显示出来。也就是说,GCHART过程具有统计和显示图表的两大功能。1 PROC GCHART过程的一般格式GCHART过程一般由下列语句控制:Proc Gchart DATA=数据集 ;VBAR 变量列表 /;HBAR 变量列表 /;BLOCK 变量列表 /;PIE 变量列表 /;STAR 变量列表 /;By 变量列表 ;Run ;在PROC GCHART语句后面可以跟随着任何多个图形要求的语句,如上面的VBAR、BLOCK等语句。也就是一个GCHART过程能够对一个指定的数据集画出任意多个各种不同的图形。每一个图形要求语句需要指定一个图形变量或多个图形变量用于将它们的值画图。由于每个图形要求语句的选项众多,将它们的选项分成两部分:通用选项列表和专用选项列表。所谓通用选项列表是指这些选项可以用在每个图形要求语句中,而专用选项列表指这些选项只有本语句可使用。在PROC GCHART过程的使用时,常常选用BY语句。BY语句指定一个变量或多个变量后,将按指定的变量进行分组处理,然后按每一个被BY语句指定的变量分组生成分开的图形。我们以VBAR图形要求语句为例来说明各个图形要求语句的基本使用情况。VBAB语句用来列出用户想要画的垂直条形图的那些变量。每个图形变量对应一张垂直条形图。每张图表占一页。垂直条形图的纵坐标轴用来表示频数、累计频数、百分数、累计百分数、总和或平均值。在每个条形图的横坐标轴上都标有该图形变量的各个对应值。如果图形变量是字符变量或离散的数值变量,那么在对应的横坐标上将标记真实值;如果图形变量是连续变量,那么在对应的横坐标上将标记变量值的区间中点。除此之外,在PROC GCHART过程中还可以使用AXISn、LEGENDn、PATTERNn、TITLEn、FOOTNOTEn、NOTE、DONUD语句。2 PROC GCHART过程的三要素由PROC GCHART过程产生图形要决定以下三个要素:(1). 选择图形的表示方法下面的几种图形至少要选一种:l VBAR语句绘制垂直条形图或垂直直方图。l HBAR语句绘制水平条形图或水平直方图。l BLOCK语句绘制块形图。l PIE语句绘制圆饼图。l STAR语句绘制星形图。通过对上面不同语句的选择,确定图形的表示方法。在每种图形中,由图表变量确定的值画出对应大小的条图或线段。(2). 选择变量的统计量在选定了图形以后,可以在语句后面的选项中,通过TYPE选项来选择对变量的不同统计量,TYPE的缺省值是FREQ,然后将统计量以条形或线段表示。统计量的类型有:l TYPE=FREQ统计图形变量的各个给定值或间隔的频数。l TYPE=CFREQ统计图形变量各个给定值或落入给定区间的累计频数。l TYPE=PCT统计图形变量各个给定值或落入给定区间的观测数的百分比。l TYPE=CPCT统计图形变量各个给定值或落入给定区间观测数的累计百分比。l TYPE=SUM统计图形变量所有值的总和。l TYPE=MEAN统计图形变量所有值的平均值。例如:VBAR X / TYPE=MEAN 语句,指对输入数据集中的X变量求平均值,然后将平均值用垂直条形图显示。(3). 选择分组特性可以使用图形选择语句后面的一些选项,来控制在语句中指定的图形变量的分组,下面的选项可控制如何进行分组:l DISCRETE把一个数字变量当成离散变量,而不是连续变量。把每一个数字值作为图形的一个分开的条形或线段。如果省略该选项,过程则假定变量都是连续的。如果没有规定选项MIDPOINTS=或LEVELS=,过程自动选择图表的间隔。l GROUP=变量用于对指定变量进行并排分组。l SUBGROUP=变量列表将条形或线段按照指定变量的值分成段。l MIDPOINTS=数值列表规定连续性图形变量按数字列表中的中心点数字次序进行排列。缺省值为,如果图形变量是数字型,过程将自动计算各个中心点值;如果图形变量是字符型,或是数字型但选择了DISCRETE选项(即离散型数字变量),过程为每个图形变量的不同值产生一个中心点值。l LEVELS=数字指定数字型图形变量的条形或线段个数。l SUMVAR=变量指定用于计算总和或均数的变量。3 通用和专用选项列表通用选项列表中的选项是用于VBAR、HBAR、BLOCK、PIE和STAR语句的共同选项,主要是一些我们刚在上面已介绍的分组特性选项和变量统计量TYPE选项。专用选项列表中的选项是各个不同的图形语句自己的特有选项。主要的选项见下表:选项应用语句功能说明AXIS=最大值VBAR、HBAR定义坐标轴的最小值和最大值GSPACE=间隔数定义条形组间的间隔空间数大小ASC/DESCVBAR、HBAR、PIE每组内按升序/降序显示条形及有关统计量G100VBAR、HBAR、BLOCK强迫每个组的条图和统计量加到100%BLOCKMAXBLOCK定义图中最高块的统计量值ANGLE=角度数字PIE、STAR定义开始逆时针旋转的角度FILL=SOLID或X每一区域用纯色或交叉线填充CFILL=颜色定义图中所有文本的颜色NOLEGEND除了STAR不输出SUBGROUP变量的图例NOHEADINGBLOCK、PIE、STAR不输出在图表顶部的抬头行二. 条形图条形图是利用相同宽度条形的长短或高低表现各相互对立的统计数据大小或变动的统计图。条形图可分成水平条形图(又称带形图)和垂直条形图(又称柱形图),分别用HBAR和VBAR语句实现。无论水平条形图还是垂直条形图,都有三种类型的图式:l 简单条形图是以若干平行且等宽的距行表现数量对比关系的一种图形,各条之间有间隙。简单条形图也称为单式条形图。图形语句的特点是无GROUP和SUBGROUP选项。l 分组条形图是指由每两条或以上条组成一组的条形图,组与组之间有大间隔,每组内条形之间无间隙或小间隙。分组条形图也称复式条形图。图形语句的特点是使用GROUP选项。l 分段条形图是以条形的全长代表某个变量的整体,条形内部的各分段长短代表各组部分在整体中所占比例的统计图,每一段之间没有间隙并用不同线条或颜色表示,各条之间有间隙。由于每个条图由若干段组成,因此分段条形图又可称作分量条形图。图形语句的特点是使用SUBGROUP选项。下面我们通过举例来说明各种条形图的使用。1 简单条形图例如,我们想统计计算上证指数从1月到12月每月的平均涨跌情况。设定从INDEXSH数据集中选择1991年1月1日到1999年12月31日的观测数据作为统计计算对象。由于INDEXSH数据集包含的是周线数据,而不是日线数据,所以这些统计计算结果会有误差。为了能进行相应地统计计算和绘制出对应的条形图,必须对INDEXSH数据集先进行一些处理。由于SAS的日期值在计算机内部存储的是数字值,我们用MONTH()函数从日期值DATE中取出月份数字存放到MONTH变量中,转换形成一个新的数据集INDEXSH2,新增的这个MONTH变量取值为112月。然后调用PROC GCHART图表过程确定MONTH为图形变量,周涨跌CHANGE_为统计变量,统计类型为求平均值,这样将对所有相同月份的CHANGE%值求平均,并用条形长短表示。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname study d:sasdatamydir ;Data study.indexsh2 ;set study.indexsh ;where 31dec1990ddate01jan2000d ;month=month(date) ;Proc format ;Value m_day 1=Jan 2=Feb 3=Mar 4=Apr 5=May 6=Jun7=Jul 8=Aug 9=Sep 10=Oct 11=Nov 12=Dec ;Proc gchart data=study.indexsh2 ;vbar month /discretesumvar=change_type=mean ;format month m_day. ;title Shanghai StockIndex ;title2 Increase by an average of percent a month ;title3 1991.01.01-1999.12.31 ;Run ;程序说明:DATA数据步由INDEXSH数据集转换形成INDEXSH2数据集,新增MONTH变量的值等于同一观测中的DATE变量中的月份值,数据集INDEXSH2去掉了原数据集中不完整月份的观测,即去掉一些头尾观测。PROC FORMAT格式化过程自定义了格式M_DAY,能将112个数字输出为对应的月份英文缩写。PROC GCHART过程确定对新数据集INDEXSH2绘制垂直条形图,图形变量为MONTH,由于MONTH是数字变量,故要选用DISCRETE选项,确定它为数字型离散变量。SUMVAR=CHANGE_选项确定数据集中的CHANGE_变量为计算统计量,TYPE=MEAN选项确定统计类型为求平均值,即对相同MONTH值的CHANGE_变量值求平均。程序的运行结果显示在GRAPH窗口中,见图211所示。图211 上证指数月涨跌百分比简单条形图从条形图显示的统计结果中,我们可清楚地看出,上半年的机会远远大于下半年,总体投资策略应该下半年休息,年未建仓,上半年持股待涨到五、六月清仓。其中五月份是全年上涨最大的月份,七月份下跌风险较大,八月份反弹机会较大。2 分组条形图例如,我们有一个学生成绩数据集CLASS,记录每个学生三门课程的成绩。现在想要按每个学生分组,用条形的高低表示各自三门课程的成绩。通常对数据集中数据进行绘图前,先要检查数据集的数据库结构是否符合图形过程的要求,如果不,就不能绘制出符合人们要求的图形,需要将数据集进行适当地转换。实事上,数据集CLASS的数据库结构不满足数据库设计的1NF(第一范式),也同样不满足PROC GCHART过程对制作此图的要求。我们用DATA数据步生成一个新的数据集GCLASS,用以消除重复项TEST1、TEST2、TEST3,统一用变量TEST取代,而用COURSE变量存放不同的课程名称。为了便于理解和比较,新数据集中我们没有去掉TEST1、TEST2、TEST3变量。用PROC GCHART过程对新数据集GCLASS绘制分组条形时,指定的图形变量是COURSE,将显示COURSE变量中各个不同值的条形;分组变量指定为NAME,将显示NAME变量中各个不同值的分组;统计变量指定为TEST,统计类型缺省为求和,将对同一分组值中同一图形变量值的各TEST值求和,本例数据中,每次求和TEST变量的记录都只有一条记录。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname study d:sasdatamydir;Data study.Gclass ;Set study.class;COURSE=DBS ; TEST=TEST1 ; OUTPUT ;COURSE=MIS ; TEST=TEST2 ; OUTPUT ;COURSE=DSS ; TEST=TEST3 ; OUTPUT ;Proc print data=study.Gclass;Title Study.Gclass data set;Proc gchart data=study.Gclass;Vbar COURSE / group=NAMEsumvar=TEST axis=60 to 100 by 10autoref ;Title Vbar course /Group=name;Run ;程序说明:DATA数据步创建GCLASS数据集,将原来CLASS数据集的一条记录变成三条记录,用COURSE变量存放三门课程的名称DBS、MIS、DSS,用TEST变量存放成绩。新数据集GCLASS,用PROC PRINT打印过程输出,见图212所示。PROC GCHART过程中图形语句的AXIS选项,由于语句是VBAR垂直条形图,所以它指纵轴上的刻度。AUTOREF选项,是自动画参考线,通过每一个主刻度线画出相应一条垂直于刻度坐标轴的参考线。程序的运行结果显示在GRAPH窗口中,见图213所示。图212 符合分组条形图的GCLASS数据集图213 用PROC GCHART过程绘制的分组条形图分段条形图例如,如果我们想要比较每个学生的考试总分和平均分,还能比较构成总分的各科成绩的大小,最恰当就是使用分段条形图来表示。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname study d:sasdatamydir;Proc gchart data=study.Gclass;Hbar NAME /Subgroup=COURSEsumvar=TESTsummeanascendingref=180 270 ;Title Hbar NAME /Subgroup=COURSE ;Run ;程序的运行结果显示在GRAPH窗口中,见图214所示。图214 用PROC GCHART过程绘制的分段条形图程序说明:PROC GCHART过程指定输入数据集为GCLASS,HBAR图形语句指定画水平条形图。图形变量指定为NAME,分段变量指定为COURSE,统计变量指定为TEST。SUM和MEAN选项指定对相同NAME值的TEST统计变量求和和求平均值。ASCENDING选项要求图形变量NAME值按升序排列。REF=180 270选项将在横坐标轴180和270处画出两条垂直参考线。要特别注意SUM、MEAN选项与TYPE=SUM或MEAN选项的区别,前者指对如WANGWU学生三门课程DBS、MIS、DSS的统计量求和、求平均,后者指对如WANGWEU学生几次DBS考试成绩求和、求平均。三. 块形图块形图与分组条形图和分段条形图都有点类似,最主要的区别仅在于块形图以三维立体方式显示条形。例如,我们将上面绘制分段条形图的过程进行一些修改,主要用BLOCK语句代替HBAR语句,图形变量、组变量和统计变量不变,分段选项SUBGROUP=改为分组选项GROUP=。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname study d:sasdatamydir;Proc gchart data=study.Gclass;Block NAME / group=COURSEsumvar=TEST ;Run ;程序的运行结果显示在GRAPH窗口中,见图215所示。图215 用PROC GCHART过程绘制的块形图四. 圆饼图圆饼图是以圆的整体面积代表被研究现象的总体,按各构成部分占总体比重的大小把原面积分割成若干扇形,用以表示现象的部分对总体的比例关系的统计图。现象的总体在SAS系统中被指定为某一研究变量,即PROC GCHART过程中,用PIE语句指定的图形变量,所要统计的变量由选项SUMVAR=变量来指定。例如,我们要统计每个学生的平均分并对他们的成绩进行比较,查看哪个学生的考试成绩最好,哪个学生的考试成绩最差,所占比例多少。最简单方法是绘制圆饼图。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname study d:sasdatamydir;Proc gchart data=study.Gclass;Pie name /sumvar=testtype=meanslice=arrowpercent=insidevalue=arrowexplode=Wangwu zhaoliuangle=90ctext=blackcfill=black;Title Statistic Records of Students ;Run ;程序说明:想要绘制理想的圆饼图,需要设置许多重要的选项。PROC GCHART过程的PIE语句,首先要指定图形变量为NAME,统计变量为TEST,统计类型为求平均值MEAN。其它的一些选项主要用于修饰图形,常用的有:l SLICE=ARROW每一块扇形对应的NAME值标签方式,=ARROW表示用一条线指向扇形,=INSIDE表示标签在扇形内部,=NONE表示没有标签,=OUTSIDE表示标签在扇形外部。l PERCENT=INSIDE每一块扇形相应百分比数的标签方式,同样有四种值,=ARROW,=INSIDE,=NONE,=OUTSIDE。l VALUE=ARROW每一块扇形统计值的标签方式,也同样有四种值,=ARROW,=INSIDE,=NONE,=OUTSIDE。l EXPLODE=Wangwu zhaoliu 把在列表中列出的NAME变量值所对应的扇形分离出去,可以从视觉上起到强调这一块扇形的目的。请注意列表中字符串要与变量NAME中值的大小写完全匹配。l ANGLE=90指定第一块扇形的起始的角度,缺省值为0。l CTEXT=BLACK设置图中所有文字为黑色,还可以其它颜色。l CFILL=BLACK设置图中所有文本为黑色,还可以其它颜色。l COUTLINE=BLACK设置扇形的轮廓线为黑色,还可以其它颜色。l FILL=SOLID或X设置各个扇形用颜色区别或用交叉线区别。如果无此选项,则扇形内为空白。程序的运行结果显示在GRAPH窗口中,见图216所示。图216 用PROC GCHART过程绘制的圆饼图星形图星形图是把观测总体用一个360度角表示,每一构成部分等分360度角,且每一构成部分的统计量大小用一条与角中心点相连的线段长短表示,然后将各线段的顶点依此连接起来。星形图适用于周期性数据,如一年的月份或者一天的小时,也适用于成分组成数据,如描述某食品的维生素组成和大小。例如,我们要统计上证指数九年中1月份成交量平均值、2月份成交量平均值、12月份的成交量平均值,并用星形图表示。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname Study d:sasdatamydir ;Proc format ;value m_day 1=Jan 2=Feb 3=Mar 4=Apr 5=May 6=Jun7=Jul 8=Aug 9=Sep 10=Oct 11=Nov 12=Dec ;Proc gchart data=study.indexsh2 ;star month / discretesumvar=volumetype=mean ;format month m_day. ;title Shanghai StockIndex ;title2 1991.01.01-1999.12.31 ;Run ;程序说明:数据集INDEXSH2是从INDEXSH数据集转换过来的,各条观测已经按月的数字号记录周成交量。调用PROC GCHART过程,使用STAR语句,指定图形变量为MONTH,统计变量为VOLUME,统计类型为MEAN,由于MONTH是数字变量,需要指定它为离散变量DISCRETE,将把同月号的观测按指定的统计变量和统计类型进行合并。程序的运行结果显示在GRAPH窗口中,见图217所示。图217 用PROC GCHART过程绘制的星形图形的显示结果分析,全年一、二月份的成交量最小,大概主要是农历过春节放长假的原因,然后成交量呈规律性逐月放大,至七、八月份达到最大,从图217上证指数月涨跌百分比中,我们知道上半年行情也是不断上涨,价量完全配合,七、八月份的大成交量和指数见顶后大幅下挫和反弹,可能跟上半年累积涨幅过大需要调整,和新股大量发行上市有关。八月份后,成交量开始逐月缩小,至下一年的一、二月份。下半年风险加大和成交量萎缩也是相互吻合的。总体上看,以十月份和四月份为分界线,十一、十二、一、二、三月份的成交量之和远远小于五、六、七、八、九月份的成交量之和值得引起注意,究其原因可能与我国的企业体制、财务制度、银行借贷、资金结构和资金来源等规律性的操作有内在关系,也就是说在上述这些因素未根本改变前,这种成交量分布的情况还将继续。第二十二课 三维图形SAS系统除了可以绘制二维平面图形外,还可以绘制三维立体图形。使用PROC G3D过程能对在PLOT或SCATTER语句中指定的变量值绘制三维图形。PROC G3D过程产生的三维图形分为两种:三维曲面图和三维散布图。三维曲面图是通过在PLOT语句中指定三个图形变量来产生,三维散布图是在SCATTER语句中必需指定三个图形变量才能产生,同样还可以对三维散布图进行大小、形状、颜色的修改。一. PROC G3D过程说明PROC G3D过程产生三维高分辨率立体图形,一般由下列语句控制:Proc G3D DATA=数据集 ;PLOT Y*X=Z ;SCATTER Y*X=Z ;TITLEn 字符串;FOOTNOTEn 字符串;By 变量列表 ;Run ;在PROC G3D过程中至少要有一条PLOT或SCATTER语句,如果两条语句同时存在,将在一页中产生一个三维曲面图,下一页中产生一个三维散布图。语句中的Y*X=Z指定三个图形变量X、Y、Z,三维空间中的图形点由三个变量的值共同决定,X和Y为水平变量,Z为垂直变量。PLOT语句是将X、Y、Z三个变量值确定的空间图形点相互连成曲面,而SCATTER语句是将X、Y、Z三个变量值确定的空间图形点用符号表示或画出图形点向XY平面的垂直线(采用NEEDLE选项)。一个PROC G3D过程中可以有多条SCATTER语句。1 PLOT语句的选项用在PLOT语句中的选项按功能可以分为三类:外观选项、轴选项和描述性选项。主要选项如下:l ROTATE=角度列表指定三维图形Z轴的一个或多个旋转角度,缺省值为70度。如果有多个旋转角度,将画出对应多个不同旋转角度的三维图形。l TILT=角度列表指定三维图形Y轴的一个或多个倾斜角度,缺省值为70度。如果有多个倾斜角度,将画出对应多个不同倾斜角度的三维图形。l GRID在所有坐标轴的每一个刻度线上画出网格线。l SIDE在三维曲面图形中画出侧面墙。l XTICKNUM=n YTICKNUM=n ZTICKNUM=n指定X、Y、Z坐标轴上的刻度线数目n,缺省值为4。l ZMAX=最大数字值 ZMIN=最小数字值设定Z轴上最大的数字值和最小的数字值,超出了最大值和最小值的Z变量值部分将被省略。还有设置图形各个对象颜色的选项,如CBOTTOM、CTOP、CTEXT、CAXIS选项,分别指定顶部、底部、文本和所有轴的颜色。其它还有NOAXES选项表示不画出坐标轴,NOLABEL选项表示不显示轴的刻度值和轴标签。2 SCATTER语句的选项SCATTER语句包含上面PLOT语句的这些选项,还有自己的一些常用选项如下:l NONEEDLE不画出图形点向XY平面的垂直线。l SHAPE=符号名指定符号名或字符变量名。符号用于显示散布图的图形点的形状,有BALLOON 、DIAMOND 、PRISM 、CLUB 、FLAG 、PYRAMID、CROSS 、HEART、SPADE 、CUBE 、PILLAR 、SQUARE、CYLINDER 、POINT 、STAR。l SIZE=大小值指定图形点符号的大小值。l COLOR=颜色名指定图形点符号的颜色。二. 曲面图 例如,在前面我们用GCONTOUR过程绘制了表达式Z=2+7X-X2+9Y-Y2二维平面的利润等值线图,现在,我们可以用PROC G3D过程的PLOT语句画出三维立体的利润曲面图。我们仍然采用相同的数据集STUDY.PROFIT来绘制。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname Study d:sasdatamydir ;Proc g3d data=fit ;Plot y*x=z / rotate=160 tilt=80ctop=black caxis=black cbottom=blackgridzmax=34 zmin=-16xticknum=10 yticknum=10 zticknum=11;Title Profit Surface ;Run ;二维等利润线所构成的一圈圈大小值不同的同心椭圆,是由三维利润曲面中相同的Z值点在XY平面投影所构成。图形中显示的曲面形状与公式的吻合程度, 与STUDY.PROFIT数据集中的观测条数有关,如果我们在STUDY.PROFIT数据集中生成的X、Y、Z数据点数越多,吻合程度越高。ROTATE和TILT选项指定三维立体图形的观察角度,Z轴的旋转角度为160度,Y轴的倾斜角度为80度。CTOP、CAXIS和CBOTTOM选项的参数值都定义为黑色BLACK,是由于我们在黑白印刷时只能看到黑色,用户实际使用时可以改为其它彩色颜色。GRID选项的选用,将使图形中的XY平面出现按主刻度划分的网格线,Y轴的墙面上也将出现按主刻度划分的网格线。通过对ZMAX、ZMIN选项的参数设定,可以控制三维图形的观察区间。XTICKNUM、YTICKNUM、YTICKNUM选项,用于设定X轴、Y轴、Z轴的主刻度线的条数。程序的运行结果显示在GRAPH窗口中,见图228所示。图228 用PROC G3D过程的PLOT语句定制的曲面图下面我们再给出一个画二维正态分布的联合密度函数的图形。二维连续型随机向量(X,Y)的联合密度函数为:其中1和2为X和Y的均值,1和2为X和Y的方差,为X和Y的相关系数,绝对值小于1。为简单起见,我们设1和2为0,1和2为1,相关系数为0.5。程序如下:Goptions reset=global gunit=pct cback=white border htitle=6 htext=3 ftext=swissb colors=(back);libname study d:sasdatamydir;data study.normal3d; format z 5.1; do x=-3 to 3 by 0.05; do y=-3 to 3 by 0.05;Z=1/(2*3.14*SQRT(1-0.5*2)*EXP(-1/(2*(1-0.5*2)*(X*2-2*0.5*X*Y+Y*2); output; end; end;proc g3d data=study.normal3d ; plot y*x=z /rotate=160 ctop=red caxis=black cbottom=blue tilt=65 grid xticknum=10 yticknum=10 zticknum=10 zmax=0.2 zmin=0; title 3D Normal Distribution ; title2 Ex=0,Ey=0,Dx=1,Dy=1,Pxy=0.5;run;程序的运行结果显示在GRAPH窗口中,见图229所示:图229 用PROC G3D过程的PLOT语句定制的二维正态分布的联合密度函数的图形三. 汽泡图用PROC G3D过程的SCATTER语句绘制的三维散布图,与用PORC GPLOT过程的PLOT语句绘制的二维散布图相比,三维散布图能表现三个变量X、Y、Z在三维空间中的关系和趋势,而二维散布图只能表现二个变量X、Y在二维平面上的关系和趋势。下面,我们以上证指数中的日期DATE、成交量VOLUME、收盘价CLOSE三个关键变量的值来绘制三维散布图,我们把图形点符号用小汽泡表示,也可称为汽泡图。程序如下:Goptions reset=global gunit=pct cback=white borderhtitle=6 htext=3 ftext=swissb colors=(back) ;Libname Study d:sasdatamydir ;Proc g3d data=study.indexsh ;Scatter volume*date=close /shape= balloon noneedle size=1rotate=70 tilt=80color=black caxis=blackzmax=2100 zmin=100 zticknum=11 xticknum=7 yticknum=7 ;Title1 Shanghai StockIndex Balloon ;Title2 1990.12.21-2000.01.07 ;Run ;程序说明:数据集STUDY.INDEXSH中存放的是上证指数周线数据,成交量VOLUME和日期DATE作为X、Y轴,收盘价CLOSE作为Z轴。选项shape= balloon指定数据点的图形符号为汽泡,选项noneedle表示不向XY平面作垂直线,选项size=1表示图形符号的大小尺寸为1个单位。程序的运行结果显示在GRAPH窗口中,见图2210所示:图2210 上证指数汽泡图上证指数汽泡图是一种新的研判行情的技术分析方法。可以通过研究汽泡群与脱离群体的个体汽泡之间的关系,以及汽泡群的形成过程和移动方向、规律等,来研判大势的风向和风险程度。第二十三课 散布图、折线图和层次图SAS系统中绘制散布图、折线图和层次图,使用PROC PLOT过程和PROC GPLOT过程。PROC PLOT过程是用来画易生成的低分辩率的图形,输出在OUTPUT窗口。而PROC GPLOT过程是用来生成定制的、高分辨率的图形,输出在GRAPH窗口,并且还可以对输出的图形进行编辑修改。一. PROC PLOT过程使用PLOT过程可以在两个不同的坐标系中对两个变量作散布图、折线图、半对数图和层次图。用于数据处理中,直观地了解数据的变化趋势和数据间的相互关系等。它的一般形式为:Proc Plot DATA=数据集 ;Plot 纵坐标变量Y*横坐标变量X;Run ; 1 PROC PLOT语句PROC PLOT语句中的选项列表主要分成三类:有关图形的坐标轴选项、有关外观的选项和有关图形大小的选项。其中图形大小的两个选项较为常用:l VPCT=百分比列表规定产生图形在垂直方向占一页的百分比。例如VPCT=33表示这张输出图占一页的33%,即占一页的1/3,所以一页可以纵向打印3张图。VPCT=50 25 25表示每一页在纵向打印3张图,第一张占全页的一半,第二和第三张各占1/4页。VPCT=200表示要求输出图占2页的长度。l HPCT=百分比列表规定产生图形在水平方向占一页的百分比。2 PLOT语句PLOT语句里首先要规定数据集中的哪两个变量作为图形中的垂直变量和水平变量,以及在图形中用于画点的作图字符。PLOT语句的几种使用格式如下:plot y*x ;plot y*x =+;plot y*x=符号变量 ;plot y*x $ 标记变量 =+;plot y*x=+ b*a=* /overlay ;第一条语句作图符号用缺省形式,依此用英文大写字母A、B、CZ作为作图符号。当观测的条数较多时,低分辩率图不可能画出所有观测的点,所以当图中的某一点表示有一条观测的点时,用作图符号A;当图中的某一点表示有二条观测的点时,用作图符号B;以此类推。例如,输出图中有一个Z符号,表示在这点上共有26条观测的点或更多点。对于PROC GPLOT过程默认的作图符号为加号(+)。第二条语句用等号(=)规定一个字符作为作图符号。此例中每个散点用加号(+)表示。第三条语句用等号(=)规定一个变量的值作为作图符号,变量可以是字符变量,也可以是数值变量。此时,每个散点的作图符号用数据集中同一条观测的这个符号变量的值表示。例如,假定为=SEX变量,则作图符号为SEX变量的值F或M。第四条语句用符号($)规定一个变量的值用于标记图中的散点。此例中每个散点不仅用加号(+)表示,而且还标出了图中每一个散点在数据集的同一条观测中这个标记变量的值。第五条语句规定在同一张图上重叠两个图,当然可以重叠更多的图。OVERLAY选项要求定义在PLOT语句中的几个图打印在一张图上。例如,我们有一个上证指数周线数据集INDEXSH,包含日期变量DATE、成交量变量VOLUME、开盘价变量OPEN、最高价变量HIGH、最低价变量LOW、收盘价变量CLOSE和涨跌百分比CHANGE,用PROC PLOT过程定制一个指数对交易周的最高和最低价的重叠散点图。程序如下:Libname Study “D:/Sasdata/Mydir”;Proc Plot Data=Study.IndexSh Vpct=50 Hpct=70 Formchar=|-|- ;Where date01feb91 d ;Plot high*date=+ low*date $low =- /overlay ;Run ;程序的运行结果显示在OUTPUT窗口中,见图2011所示(为显示清晰起见,窗口的大小和显示内容的位置移动过)。图2011 用PLOT过程定制重叠散点图3 PLOT语句中的选项PLOT语句除了上述的重叠作图选项OVERLAY外,还有几类重要的选项如下:(1). 关于坐标轴刻度的任选项用VAXIS(或HAXIS)=标记值列表,定义沿垂直(或水平)坐标轴相等间隔的刻度标记值。可以用BY n的方式规定刻度的增量。这些值可以是均匀上升或下降,也可以不是,既可以是数字值,也可以日期时间值。几种可能的选项格式如下:haxis=0 to 100 by 5haxis=01jan20d to 31dec20d by 7vaxis=1 10 100 100 1000haxis=by 10其它还有VEXPAND(或HEXPAND)、VREVERSE(或HREVERSE)、VZERO(或HZERO)等有关坐标轴刻度选项。(2). 关于参考线的任选项如果要求在散布图的垂直或水平轴的指定数值上画出垂直或水平线作为参考线,可以使用如下选项:verf=100 400 1000 (三条水平参考线)href=01mar20d 01oct20d (两条垂直参考线)还可以用VERFCHAR或HREFCHAR=字符定义参考线的画线符号。(3). 关于图形轮廓的任选项BOX选项可以画出边框围住整个图形,而不仅仅是画出底部和左边框。VPOS或HPOS=轴长度,规定水平或垂直轴上打印输出的数目。(4). 关于作等值线(层次图)的任选项当要求散点(x,y)的作图符号能根据z(通常z=f(x,y))值的大小规定不同的层次强度字符时,也就是相同z值的点用相同的作图符号,不同z值的点用不同的作图符号,但最多只能把z值分成10个层次的不同值。我们可以使用如下选项:plot x*y=z /contour=3 s1=A s2=+ s3=* ;plot x*y=z /contour=3语句说明:=z指定按Z变量的内容确定散点作图符号,选项contour=3规定三个层次强度,s1=A s2=+ s3=*按上升顺序给出层次强度的作图符号。用户自己可以不定义S1、S2、S3的层次强度的作图符号,而使用缺省值。下面我们举例说明PLOT语句中选项的使用。例如,绘制上证指数周线数据集INDEXSH的散点图时,根据股票技术分析的需要,要画支撑和阻力线,以及趋势变异的时间和周期,这对以后的各种分析都很重要。我们可以通过调整纵横坐标轴的刻度和增加水平和垂直参考线来实现。程序如下:Libname Study “D:/Sasdata/Mydir”;Proc plot Data=Study.IndexSh Vpct=50 Hpct=80 Formchar=|-|- ;plot close*date=+ /haxis=21dec90d to 01jan93d by 98 vaxis=100 200 400 800 1600href=16aug91d 30apr92d 20nov92dvref=96 135 400 1429 ;title1 Shanghai StockIndex ;title2 21dec90-01jan93 ;Run ;程序的运行结果显示在OUTPUT窗口中,见图2012所示。图2012 用PLOT过程定制重叠散点图输出解释:对上证指数从1990年12月21日开市到1993年1月1日的交易数据进行分析,主要经历三种市场状况:第一种市场状况是从1990年12月21日到1991年7月底8月初,在96点至135点之间盘整筑底,历经大约3134周,形成W底;第二种市场状况是从1991年8月中旬有效突破阻力线135,形成稳步盘升单边市,至1992年4月24日历经大约2831周;第三种市场状况是从1992年4月30日至1992年11月20,在400点一线开始飙升冲顶1429,最后回落原地400点,历经大约29周。从上面的分析我们可以看到,水平和垂直参考线提供了一种看得见的暗示。技术分析的目的就是找到购买资产的适宜点,尽可能地识别一种趋势结束且另一种趋势开始的点,然后可作出适宜的交易。二. 生成高分辨率图形虽然PROC PLOT过程生成的散布图对基本数据分析是有用的,但是为了更详细的分析和表达目的

温馨提示

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

评论

0/150

提交评论