且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《Stata统计分析与应用(第2版)》一3.1 图形制作的基本命令与相关操作

更新时间:2022-09-04 15:18:11

本节书摘来自华章出版社《Stata统计分析与应用(第2版)》一书中的第3章,第3.1节,作者 周广肃,更多章节内容可以访问云栖社区“华章计算机”公众号查看

3.1 图形制作的基本命令与相关操作

一个完整的图形(见图3.1),主要包括以下几个部分:标题、副标题、坐标轴刻度与标题、图例说明、注释语句等。在Stata制图中,这些部分的设置均可以通过命令方式进行操作。最常用的操作流程即通过命令方式画出主体图形,细节的修改则通过菜单方式进行。

《Stata统计分析与应用(第2版)》一3.1  图形制作的基本命令与相关操作

3.1.1 图形制作的基本命令

图形的制作可以通过命令的方式完成,基本命令形式如下:

graph-command (plot-command, plot-options) (plot-command , plot-options), … 
graph-options

在这个命令语句中,graph-command是用来定义图的类型的命令语句,plot-command是用来定义曲线类型的命令语句,不同的曲线之间用括号隔开,曲线有自身的options选项,整个图形也有统一的options选项。
在Stata中最为常用的图形总共有7种,具体内容如表3.1所示。
《Stata统计分析与应用(第2版)》一3.1  图形制作的基本命令与相关操作

###3.1.2 图形制作的菜单选项
Stata有关制图的菜单都在菜单栏Graphics选项下面,具体内容如图3.2所示。我们可以看到,Stata可以实现双变量图、条形图、点图、饼状图、直方图、箱线图、散点图矩阵、分布图、平滑曲线和密度图、回归图、时间序列图、面板数据图等各种图形的绘制。
以双变量图的选项为例,单击Twoway graph,可以看到如图3.3所示的对话框。

《Stata统计分析与应用(第2版)》一3.1  图形制作的基本命令与相关操作

在该对话框中,有8个选项卡,对主要选项卡的说明如下。
Plots选项卡的功能是用来选择横、纵坐标所代表的变量,从而生成初步的图形。在这个选项卡中,只要单击Create按钮,就可以进行绘图变量的选择和设置了。
if/in选项卡的功能是筛选绘制图形部分的数据,例如只选择数据文件中具有某种特征的数据进行绘图,而不是使用全部数据。
Y axis选项卡的功能是设置纵轴的相关内容,包括坐标轴的标题、刻度、显示样式等。与此相对应的X axis选项卡是设置横轴的相关内容。
Titles选项卡用于设置与标题相关的内容,主要包括标题的设置、副标题的设置、注释文字的设置等。
Legend选项卡用于设置与图例相关的内容,主要包括图例的显示与否、图例的样式、图例的位置等内容。
Overall选项卡用于设置与总体图形相关的内容,包括整个图形的大小设置、风格设置等内容。

3.1.3 与图形绘制相关的基本操作

本部分内容将会简要介绍图形绘制所要使用的部分命令,具体的使用方法将会在后面的图形绘制中详细介绍。

  1. 设置标题与副标题
    标题的设置命令为:
title()

副标题的设置命令为:

subtitle()

在命令中,只需在括号内输入副标题的名称即可。
例如,如果设置图3.1中的标题、副标题,则需要在绘图命令的后面,添加如下的命令语句:
Title(每加仑油行使英里数、价格与车重关系) subtitle(1978年美国汽车数据图)

  1. 设置坐标轴
    坐标轴的设置包括坐标轴命名、坐标轴刻度设定、坐标轴刻度值设定、坐标轴样式设定等几方面内容。

(1)坐标轴的命名
坐标轴的命名分为横坐标的命名和纵坐标的命名,与图形的标题命名相似,只需在括号中填入相关的坐标轴名称即可,具体命令如下。
横坐标命名的命令为:

xtitle()

纵坐标命名的命令为:

ytitle()

例如,设置图3.1中的横、纵坐标标题,使用命令语句:
xtitle(重量/单位:千克) ytitle(每加仑油行使英里数/单位:英里)
(2)坐标轴刻度的设定
所用到的命令如下所示:

xtick(#1 (#2) #3)
ytick(#1 (#2) #3)

其中,#1代表起始刻度,#3代表结束刻度,(#2)代表间隔刻度,即单位刻度。例如,为使得横坐标的起始刻度为10,结束刻度为20,间隔刻度为2,则要在绘图命令之后输入如下命令:

xtick(10(2) 20)

(3)坐标轴刻度值设定
所用到的命令如下:

xlabel(#1 (#2) #3)
ylabel(#1 (#2) #3)

同样,#1代表起始刻度,#3代表结束刻度,(#2)代表间隔刻度,即单位刻度。当然,用户也可以在括号中直接输入所要显示的刻度值。
(4)坐标轴样式设定
命令如下:

xscale()
yscale()

如果用户不使用坐标轴,则只需要在绘图命令之后输入如下命令:

xscale(off)
ysclae(off)
  1. 设置图例
    图例一般会自动生成,若要自己设定图例,最为常用的就是内容的设定和位置的设定。

设定图例内容可使用如下命令:

legend(label(# "text")…)

实现时,只需要将图例的代号填入“#”处,然后将内容写在"text"中即可。例如,设置如图3.1所示的图例内容,则在绘图命令之后输入如下命令:
legend(label(1"Mileage(mpg)") label(2"Price"))
用户可将图例放置在图中的12个位置,对应于钟表的12个时刻,使用命令语句:

legend(position())

设置时,将位置所对应时刻的数字填入括号中即可。例如,对于如图3.1所示的图例位置,可在绘图命令之后输入如下命令:

legend(position(6))
  1. 设置脚注
    脚注内容大部分是用来对整个图形做说明介绍,或者是说明画图的数据来源,所用到的命令语句为:

note()
将脚注内容写在括号中即可。例如,设置如图3.1所示的脚注内容,在绘图命令之后输入如下命令:
note(数据来源:数据来自于美国汽车协会)