《stata图形的绘制》由会员分享,可在线阅读,更多相关《stata图形的绘制(44页珍藏版)》请在金锄头文库上搜索。
1、LOGOStata中的图形制作中的图形制作LOGO主要内容:主要内容:n1、图形制作的基本命令与相关操作n2、直方图、散点图的绘制n3、条形图、饼图的绘制n4、图形的保存、合并与修改LOGO图形制作的基本命令与相关操作图形制作的基本命令与相关操作n一个完整的图形,主要包括以下几个部分:标题、副标题、主体图形、坐标轴刻度与标题、图例说明、注释语句等。这些部分的设置均可以通过命令方式进行操作,也可以通过菜单方式进行操作。在Stata制图过程中,最常用的操作流程即通过命令方式画出主体图形,细节的修改则通过菜单方式进行操作。LOGO图形制作的菜单选项图形制作的菜单选项图形制作也可以通过菜单的方式完成,
2、有关制图的菜单都在菜单栏Graphics选项下面,具体内容如图3.2所示。在这个选项卡中,可以实现双变量图、条形图、点图、饼状图、直方图、箱线图、散点图矩阵、分布图、平滑曲线和密度图、回归图、时间序列图、面板数据图等等各种图形的绘制。图形制作的基本命令与相关操作LOGOn以双变量图的选项为例,点击“Two way graph”,可以看到如图所示的对话框。图形制作的基本命令与相关操作LOGO在这个菜单中,主要有八个选项卡对图形的绘制功能进行设置:Plots选项卡的功能是用来选择横、纵坐标所代表的变量,从而生成初步的图形。在这个选项卡中,只要点击Create图标,就可以进行绘图变量的选择和设置了。
3、if/in选项卡的功能是筛选绘制图形部分的数据的,例如只选择数据文件中具有某种特征的数据进行绘图而不是使用全部数据。Y axis选项卡的功能是设置纵轴相关内容的,主要包括坐标轴的标题、刻度、显示样式等,与此相对应的X axis选项卡的功能是设置横轴相关内容的。Titles选项卡的功能是设置与标题相关的内容,主要包括标题的设置、副标题的设置、注释文字的设置等。Legend选项卡的功能是设置与图例相关的内容,主要包括图例的显示与否、图例的样式、图例的位置等内容。Overall选项卡的功能是设置与总体图形相关的内容,主要包括整个图形的大小设置,风格设置等内容。图形制作的基本命令与相关操作LOGO直方
4、图、散点图的绘制直方图、散点图的绘制直方图的绘制直方图的绘制直方图是用矩形的面积(即长度和宽度)来表示频数分布的图形,在平面直角坐标系中,一般用纵轴表示频数或频率,用横轴表示数据的分组。通过该种图形,用户可以较为直观地了解数据的整体情况,如分布类型、中心位置、分散程度等等。在直方图的绘制过程中最基本的命令语句为:histogram varname if in weight , continuous_opts | discrete_opts options在这个命令语句中,histogram是绘制直方图的命令语句,varname是将要绘制图形的变量,if是条件语句,in是范围语句,weight是
5、权重语句,将要着重介绍的是options的内容如表3.2所示。LOGO直方图、散点图的绘制直方图、散点图的绘制LOGO直方图、散点图的绘制直方图、散点图的绘制n例如,利用usaauto文件,绘制一个关于mpg变量的最为基本的直方图。此数据是根据统计资料得到的美国汽车产业的横截面数据(1978年),完整的数据在本书附带光盘的data文件夹的“usaauto.dta”工作文件中。n在这个图形中,所有的设置均使用默认设置,这时输入的命令为:nhistogram mpgnhistogram是绘制直方图的命令语句,mpg表示将要绘制图形的变量。在这个命令语句中,只告诉Stata为变量mpg绘制直方图的基
6、本命令,而不进行任何设定,这时Stata将会绘制出如图3.4所示的直方图。LOGO直方图、散点图的绘制直方图、散点图的绘制n但是这个图形过于简单和粗糙,用户可以根据本实验讲到的命令,对图形进行以下优化设置:n(1)为图形添加标题“mpg直方图”n(2)把直方条的数目由现在的8个增加为10个n(3)增加脚注“数据来源于美国汽车协会”n(4)横轴刻度范围为从10到45,刻度单位为5,名称为“每加仑油行使英里数/单位:英里”n(5)为图形添加一条正态曲线n(6)标注直方条的高度LOGO直方图、散点图的绘制直方图、散点图的绘制完成以上设置,用户需要重新输入绘制图形的命令如下:histogram mpg
7、, title(mpg直方图) bin(10) note(数据来源于美国汽车协会) xtick(10(5)45) xtitle(每加仑油行使英里数/单位:英里) norm addlabels在这个命令语句中,“title(mpg直方图)”部分的作用是对图形添加标题;“bin(10)”部分的作用是设置直方条数目为10;“note(数据来源于美国汽车协会)”部分的作用是设定脚注的内容;“xtick(10(5)45)”部分设定横轴刻度起始值为10,终止值是45,间隔是5;“xtitle(每加仑油行使英里数/单位:英里)”部分完成了横轴标题的设定;“norm”部分完成了正态曲线的绘制,“addlabe
8、ls”部分标注了直方条的高度。命令执行的结果显示在图3.5中。LOGO直方图、散点图的绘制直方图、散点图的绘制n如果用户想要将国产车与进口车的图形分开展示,并作对比,可以在以上命令之后再添加如下命令语句:nby (foreign)n所以,这时需要输入的完整的命令语句为:nhistogram mpg, title(mpg直方图) bin(10) note(数据来源于美国汽车协会) xtick(10(5)45) xtitle(每加仑油行使英里数/单位:英里) norm addlabels by (foreign)n用户可以看到如图3.6所示的结果,这时图形按照分类变量foreign将数据分别绘制出
9、直方图予以显示,方便用户的对比分析。LOGO直方图、散点图的绘制直方图、散点图的绘制散点图的绘制散点图的绘制散点图是双向关系图的一种,常用来反映两个或多个变量之间的关系。散点图中通常用纵轴来表示因变量,用横轴来表示自变量,用图形来反映纵轴的数值是否随横轴数值的变化而变化。在散点图的绘制过程中最基本的命令语句为:twoway scatter varlist if in weight , options在这个命令语句中,twoway scatter是绘制散点图的命令语句,varlist是将要绘制图形的变量,一定注意x变量要放置在y变量之后,if是条件语句,in是范围语句,weight是权重语句,下
10、面着重介绍散点图特有的数据标记的形状、颜色、大小的设定和区分组群的选项。(1)数据标记的设定包括数据标记形状的设定、颜色的设定、大小的设定、散点标签的设定四个部分。数据标记形状的设定,是通过msymbol()命令选项来设定的,只需将所需要的形状代号输入括号中即可,形状命令代号在表3.3中。LOGO直方图、散点图的绘制直方图、散点图的绘制LOGO直方图、散点图的绘制直方图、散点图的绘制LOGO直方图、散点图的绘制直方图、散点图的绘制数据标记颜色的设定,是通过mcolor ()命令选项来设定的,只需将所需要的颜色名称输入括号中即可。例如设定的标记颜色为红色,则只需在绘图命令语句之后输入如下命令:m
11、color(red)数据标记大小的设定,是通过msize ()命令选项来设定的,只需将所需要的大小数字输入括号中即可。例如设定的标记大小为5号,则只需在绘图命令语句之后输入如下命令:msize (5)散点标签的设定,是通过mlabel ()和mlabposition()命令选项来设定的,只需将标签的内容输入mlabel后的括号中,将代表位置的数字输入mlabposition后面的括号中即可。例如设定散点的内容为变量city,位置在3点钟处,则只需在绘图命令语句之后输入如下命令:mlabel (city) mlabposition(3)LOGO直方图、散点图的绘制直方图、散点图的绘制(2)群组划
12、分选项。如果在数据中存在分类变量,可以将数据分类以后再绘制散点图,所使用的命令为by(),括号中需要填入分类变量。例如,按照性别变量分类绘图,则需要在绘图命令之后添加下所示命令:by(gender)例如,运用usaauto数据文件中的数据绘制mpg和weight关系的最为基本的散点图,所有设置均使用默认设置,需要输入的命令语句为:twoway scatter mpg weight在这个命令语句中,twoway scatter是绘制散点图的基本命令,功能是只告诉Stata为变量mpg和weight绘制散点图,而不进行任何设定,这时Stata将会绘制出如图3.7所示的散点图。LOGO直方图、散点图
13、的绘制直方图、散点图的绘制但是这个图形过于简单和粗糙,用户可以根据本节讲到的命令,对图形进行以下优化设置:(1)为图形添加标题“mpg与weight散点图”和副标题“1978年美国汽车数据图”(2)为图形添加图例,位置在钟表2点钟处(3)绘制一条拟合的趋势曲线完成以上设置,用户需要重新输入绘制图形的命令如下:twoway scatter mpg weight | lfit mpg weight, title(mpg与weight散点图) subtitle(1978年美国汽车数据图) legend(position(2) 在这个命令语句中,“twoway scatter mpg weight |
14、 lfit mpg weight”部分完成了两个主体图形的绘制,其中符号|表示在同一个坐标系内展示两个图形,scatter是绘制散点图的命令,lfit是拟合曲线的命令;“title(mpg与weight散点图) subtitle(1978年美国汽车数据图)”部分完成了标题与副标题的设定;“legend(position(2)”部分完成了图例位置的设定,位置在两点钟处。绘制的图形如图3.8所示。LOGO直方图、散点图的绘制直方图、散点图的绘制此外,我们可以进一步运用理论中讲述到的命令进行图形的绘制,例如可以做如下改进:(1)将散点的形状设置为实心大三角,颜色为黑色(2)为每个散点添加标签,内容为
15、汽车的品牌(make),位置为9点钟处,颜色为黑色(3)按照变量foreign分成两个图形进行绘制完成以上设置,用户需要重新输入绘制图形的命令如下:twoway scatter mpg weight, title(mpg与weight散点图) subtitle(1978年美国汽车数据图) msymbol(T) mcolor(black) mlabel(make) mlabcolor(black) mlabposition(9) by(foreign)在这个命令语句中,新加入的命令语句“msymbol(T) mcolor(black)”部分完成了散点形状、颜色的设定,msymobl(T)表示为实
16、心大三角,mcolor(black)表示颜色为黑色;“mlabel(make) mlabcolor(black) mlabposition(9)”部分设置了散点标签内容为make生产商,颜色为黑色,位置在9点钟处;“by(foreign)”将数据分为两幅图形进行绘制。完成后的散点图如图3.9所示。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制条形图的绘制条形图的绘制条形图是用矩形的长度来表示相互独立的变量大小取值的统计图形,它与直方图虽看着相似,但是含义和用法却相差甚远。条形图主要有两种,一种是横向的条形图,一种是纵向的条形图。在条形图的绘制过程中最基本的命令语句为:graph
17、 bar yvars if in weight , optionsgraph hbar yvars if in weight , options在这两个命令语句中,第一个是用来绘制纵向条形图的,第二个是用来绘制横向条形图的。graph bar/hbar是绘制条形图的命令语句,yvar是将要绘制图形的变量,if是条件语句,in是范围语句,weight是权重语句。在绘制条形图的过程中,需要指明所要展示的统计量,如果不指明统计量,则会默认显示均值(mean)统计量,绘制条形图可使用的统计量如表3.6所示。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制LOGO 条形图、饼图与箱线图的绘
18、制条形图、饼图与箱线图的绘制下面着重讲述一下条形图的options选项的内容。(1)stack选项。绘制条形图时,有时将具有多个y变量的统计量上下堆积,而不是默认的并排形式。stack选项通常与percentage选项连用,这时纵轴的统计量默认为是比例,总和通常为100%,当然,stack也可单独使用,这时就没有100%的要求了。(2)blabel选项。blabel选项的主要作用有两个,一个是通过为条柱增添数值标签增加了图形所显示的信息量,另一个是可以改变bar的名称和组合。blabel选项的命令语句如下:blabel(what , where_and_how)其中what选项表示blabel
19、选项定义的内容,详细内容显示在表3.7中,, where_and_how定义了blabel选项的位置和显示方式的内容,具体如表3.8所示。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制例如,利用zichan.dta数据,进行条形图的绘制。此数据是根据中国某市历年统计年鉴得到的自来水产业资产构成的数据 (2000年2007年),其中year代表年份,current代表流动资产,solid代表固定资产,gross代表资产总额。完整的数据“zichan.dta”工作文件中运用zichan.dta数据文件中的数据绘制流动资产
20、current、固定资产solid和资产总额gross随时间变化的最为基本的条形图,所有设置均使用默认设置,需要输入的命令语句为:graph bar current solid gross, over(year)在这个命令语句中,graph bar是绘制条形图的命令,current、solid、gross是将要绘图的变量,over(year)作用是使图形按时间year进行分组绘制。这个命令的功能只是告诉Stata为变量current、solid和gross绘制随时间变化的条形图的基本命令,而不进行任何设定。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制当然,我们可以根据自身的需
21、要对图进行一些改进:(1)将纵向条形图改成横向条形图(2)为每个条柱增加标签,内容为条柱的高度,位置在条柱的右方(3)在300000数值处画一条标识线完成以上设置,用户需要重新输入绘制图形的命令如下:graph hbar current solid gross, over(year) blabel(bar, position(outside) yline(300000)在这个命令语句中,“graph hbar”部分完成了横向条形图的绘制,“blabel(bar, position(outside)”部分以条柱的高度数值给条柱添加标签,位置在条柱的右方,“yline(300000)”部分完成了标
22、识线的绘制。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制n当然,为了更加清楚地看到资产的结构,用户可以运用前面理论讲解的内容,将条形图绘制成层叠的形式,这时用到的选项为stack,具体命令如下:ngraph bar current solid gross, over(year) blabel(bar, position(outside) stackn这个命令与前面命令的最大不同就是加了stack选项,这个命令会使得条形图成为3.14所示的层叠的条形图。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制饼图的绘制饼图的绘制饼图是用圆形及圆内扇形的大小表示总体中各部分
23、所占比例的统计图,通常用来表示各部分在总体中所占份额。绘制饼图的基本命令为:graph pie varlist if in weight , optionsgraph pie是绘制饼图的命令语句,varlist/varname是将要绘制图形的变量,if是条件语句,in是范围语句,weight是权重语句,options选项的具体内容显示在表3.9中。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制n例如,运用zichan.dta数据文件中的数据绘制资产构成的最为基本的饼图,所有设置均使用默认设置,需要输入的命令语句为:n
24、graph pie current solid,by(year)n在这个命令语句中,graph pie是进行饼图绘制的命令,current、solid是进行绘图的变量,by(year)是将饼图按时间分类绘制。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制但是,这个图形不仅美观性较差,而且反映的信息也不是特别清楚,用户可以进行以下修饰和改进:(1)图形名称为“资产构成图”(2)在每一个扇面上加上所占比例的标签(3)将代表流动资产的扇面突出显示,且颜色设置为黄色完成以上设置,用户需要重新输入绘制图形的命令如下:graph pie current solid,plabel(_all
25、percent, gap(9) pie(1, explode color(yellow) title(资产构成图) by(year)在这个命令语句中,“plabel(_all percent, gap(9)”为每个扇面添加比例标签,同时设定了相对位置,“pie(1, explode color(yellow)”使得第一个扇面向外突出,且颜色设定为黄色,“title(资产构成图)”命名了标题。实现设定以后的图形为图3.16所展示的式样。LOGO条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制箱线图的绘制箱线图的绘制箱线图,顾名思义是由一个箱子和一条线段组成的图形,线段两端分别代表变量的最小值
26、和最大值,一个箱子分别标明了第一个四分位数、中位数和第三个四分位数,因此一个箱线图是五个统计量的汇总。箱线图反映了数据的中心、分布、极端值的情况,所以在比较不同的数据集是较为常用。箱线图有两种,一种是纵向的箱线图,一种是横向的箱线图。箱线图绘制的基本命令如下:graph box yvars if in weight , optionsgraph hbox yvars if in weight , options在这两个命令语句中,第一个是用来绘制纵向箱线图的,第二个是用来绘制横向箱线图的。graph box/hbox是绘制条形图的命令语句,yvars是将要绘制图形的变量,if是条件语句,in是
27、范围语句,weight是权重语句。例如,运用数据文件usaauto中的数据绘制价格price和重量weight的箱线图,所有设置均使用默认设置,需要输入的命令语句为:graph box price weight这个命令执行以后,将会绘制出如图3.17所示的反映price和weight情况的箱线图。LOGO 条形图、饼图与箱线图的绘制条形图、饼图与箱线图的绘制n但是,这个图形不仅美观性较差,而且反映的信息也不是特别清楚,用户可以进行以下修饰和改进:n(1)按国产车和进口车分别显示这两个变量的信息。n(2)将分组后x轴的组名分别命名为“国产车”和“进口车”n完成以上设置,用户需要重新输入绘制图形的
28、命令如下:ngraph box price weight,over(foreign, relabel(1 “国产车” 2 “进口车”)n在这个命令语句中,“over(foreign, relabel(1 “国产车” 2 “进口车”)”部分不仅实现了按foreign变量分组,而且实现了将组命名的设定,实现的结果如图3.18所示。LOGO图形的保存、合并与修改图形的保存、合并与修改图形的保存和已存图形的打开图形的保存和已存图形的打开(1)图形绘制完成以后,需要对其进行保存,保存的命令语句是:graph save graphname filename , asis replace在这个命令语句中,g
29、raph save是保存图形的命令语句,graphname为图形保存的名称,filename为保存的路径,特别需要强调的是, asis replace选项,它的作用是冻结图形,使其不能再被修改。(2)已保存图形打开的命令语句是:graph use filename在这个命令语句中,graph use是打开图形的命令语句,filename是文件保存的路径名称。在一般应用过程中,用户输入graph use命令,然后输入图形存储路径即可。(3)图形的显示,所使用的命令语句是:graph display name , optionsgraph display是显示图形的命令语句,name为图形的名称。
30、LOGO图形的保存、合并与修改图形的保存、合并与修改图形的合并图形的合并为了研究的需要,有时需要将绘制完成的几幅不同的图形整合到一幅图形之中,这时就会用到Stata提供的图形合并的功能,其基本命令语句如下:graph combine name name . , options例如,我们使用usaauto数据库,首先生成三幅图形,并依次保存。(1)生成mpg与weight的散点图,保存名称为pic1,命令如下:twoway scatter mpg weight, saving(pic1)(2)生成price与weight的散点图,保存名称为pic2,命令如下:twoway scatter pri
31、ce weight, saving(pic2)(3)生成rep78与weight的散点图,保存名称为pic3,命令如下:twoway scatter rep78 weight, saving(pic3)LOGO图形的保存、合并与修改图形的保存、合并与修改n接下来,我们可以发现者三幅图形的x轴相同,所以可以合并成x轴对应的一幅图形,命令为:ngraph combine pic1.gph pic2.gph pic3.gph, imargin(vsmall) row(3) saving(pic4)n在这个命令语句中,“graph combine pic1.gph pic2.gph pic3.gph”
32、部分是告诉Stata实现哪些图形的合并,“imargin(vsmall)”部分的作用是使得每个图形独立的边缘区域不要留过多的空间,“row(3)”部分的作用是让这三幅图形排成三行。执行命令之后的结果如图3.19所示。LOGO图形的保存、合并与修改图形的保存、合并与修改n图形的修改图形的修改n图形绘制完成以后,通常使用菜单对图形的细节进行修改,下面将简单介绍一下图形编辑器的界面和功能。n在绘制图形完成以后,可以在file菜单选项下选择Start Graph Editor或者在工具栏中点击 图标,就可打开图形编辑器了。图形编辑器的界面如图3.20所示,与普通的操作界面差别不大,也是由标题栏、菜单栏
33、、工具栏、主界面等部分组成。LOGO图形的保存、合并与修改图形的保存、合并与修改LOGO习题习题n1.利用usaauto.dta数据,绘制如图3.21所示的直方图。LOGO习题习题n2.利用consumption_china.dta数据,绘制如图3.22所示的散点图。LOGO习题习题n4.使用womenwork.dta数据,绘制如图3.24所示的条形图。LOGO习题习题n5.使用gas.dta数据,绘制如图3.25所示的饼图。LOGO习题习题n6.利用consumption_china.dta数据,绘制如图3.26所示的箱线图。LOGO习题习题n7.利用图形编辑器,将图3.26改成3.27所示的样式。LOGO习题习题n8.将图3.26与图3.22合成如图3.28所示的一幅图形中。