l scatter le year//绘制散点图,位于scatter后的第一个变量是y轴的变量,第二个变量是x轴变量
l scatter le year, connect(l) //表示以直线的方式连接相邻的两个点
l scatter le year, connect(l) msymbol(i) //表明散点的显示方式为"看不见"
绘制两个y变量,一个x变量图,设置样式:
l scatter educ exper wage//绘制女性的educ与wage以及exper与wage的散点图
l scatter educ exper wage,mstyle(p9 p8) msymbol(O X) mcolor(green blue ) msize(mediummedium)//绘制女性的educ与wage以及exper与wage的散点图,要求前者使用整体样式p9,后者使用整体样式p8。同时,散点图形状前者选择实心圆,后者选择大写字母X;散点颜色前者选择绿色,后者选择蓝色;塞散点大小均选择中等
设置标签:
l scatter lexp gnppc if region==2, mlabel(country) mlabpos(9)// 绘制以预期人口寿命lexp为y轴变量,以人均GNPgnppc为x轴变量的散点图,mlabel(country) 表示添加国家名称country作为标签,将所有标签移动至九点钟方向,即数据点的左方
l generate pos = 3 //生成一个常数变量,其赋值为3
replace pos = 12 ifcountry=="Honduras" //将Honduras的pos变量数值改为12,即希望Honduras的标签显示在散点的正上方
replace pos = 9 if country=="UnitedStates" //将United States的pos变量数值改为9,即希望Honduras的标签显示在散点的左侧
scatter lexp gnppc if region==2,mlabel(country) mlabv(pos) //在之前的基础上,以pos为指示变量指定每个散点的位置,
l scatter lexp gnppc if region==2, mlabel(country) mlabv(pos)xscale(range(-500 35000))//z在之前的基础上,设置x轴的显示范围
散点图震荡:
scatter mpg weight, jitter(7) // jitter(7) 表明我们对散点图震荡的程度相当于整个绘图区域的7%,读者可以增加或者减少这个数值来进行尝试
坐标轴尺度:
l scatter lexp gnppc, xscale(log) //xscale(log) 表明x轴使用去了对数之后的尺度
l scatter mpg weight,yscale(rev) //yscale(rev) 表示y轴上使用逆向坐标
l scatter mpg weight, yscale(off) //yscale(off) 表示完全关掉所有与坐标相关的内容
l scatter mpg weight, yscale(noline) xscale(noline) // yscale(noline)xscale(noline)表示去掉x轴和y轴坐标线
l scatter mpg weight, ylabel(#10) xlabel(#10) //xlabel(#10) 表示x轴大约有10个刻度,ylabel(#5)表示y轴大约有10个刻度,Stata会根据自己的原则进行适当的调整
l scatter mpg weight, ytick(#10) xtick(#15) //ytick(#10)表示y轴大约10个刻度、xtick(#15)表示x轴有大约15个刻度,要求绘制x轴有大约15个刻度、y轴大约10个刻度的散点图,注意这里只要求有刻度,不要求对刻度标识数值
l scatter mpg weight, ymlabel(##5) xmtick(##10) //ymlabel(##5)表示y轴每两个主刻度之间有5个小刻度标识,xmtick(##10)表示x轴每两个主刻度之间有10个小刻度
l scatter mpg weight, ymtick(#20, grid) xmtick(#20, grid gmax) //选项grid表示绘制网格线,这个选项同时出现在y和x轴的设定中,说明要同时在x轴和y轴方向绘制网格线,gmax出现在x轴的设定中,说明要要在x的最大值处绘制网格线
l scatter mpg weight, by(foreign) ylabel(,nogrid) //如果不添加nogrid选项,这个图形默认会出现网格;
l scatter le year,c(l) xlabel(1900(10)2000, grid) //从1900年以每十年一个刻度的方式标识到2000年
l scatter le year,c(l) xlabel(1900 1918 1940(20)2000, grid) // 从1940年以每20年一个刻度的方式标识到2000年,同时标注1900年和1918年两个具体的年份
l scatter le_m le_f year,c(l) legend(label(1 "Males")label(2 "Females"))//绘制le_m、le_f与year的散点连线图,并要求将图例改分别成“male”和“female”
l line le_m le_f year, legend(pos(5) ring(0) col(1) lab(1"Males") lab(2 "Females"))legend(subtitle("Legend"))//绘制le_m、le_f与year的散点连线图,要求将图例改分别成“male”和“female”并放置在五点钟方向,同时图例排成一列。为第三题绘制的图形图例添加标题“Legend”
by选项
l scatter mpg weight, by(foreign, total rows(1))//按照是否为国产(相关的变量是foreign)分组绘制mpg和weight的散点图,并添加一张包含全部观测值的散点图,改为一行排列
l scatter mpg weight, subtitle(, ring(0) pos(1) nobexpand) by(foreign,total)//每个小图的标题位置改为ring(0)、pos(11),属性设置为nobexpand
l scatter mpg weight || lfit mpg weight ||, by(foreign, total row(1))//图例里面加入拟合线
轴线选择
l scatter mpg weight || scatter price weight,yaxis(2)//绘制mpg、price与weight的散点图,要求两个y轴变量分别使用两个y轴
l scatter mpg weight || scatter price weight,yaxis(2) || ,xlabel(#10)ytick(#10,axis(2)) ylabel(#8,axis(1))// 绘制mpg、price与weight的散点图,要求两个y轴变量分别使用两个y轴为每一个坐标轴添加刻度和刻度标识,要求是x轴分位大约十个刻度,左边的y轴分位大约8个刻度,右边的y轴分位大约10个刻度并且不必显示刻度标识
l twoway (scatter lexp gnppc, mlabel(country) mlabv(pos)) (line hat gnppc, sort) , xscale(log) xlabel(.5 5 10 15 20 25 30,grid) legend(off) title("Lifeexpectancy vs. GNP per capita") subtitle("North, Central, and SouthAmerica") note("Datasource: World bank, 1998") ytitle("Life expectancy at birth(years)")//绘制lexp和gnppc的散点图,每个散点的标签为相应的国家名,并利用mlabv()选项恰当地安排标签的位置,x轴使用对数化后的尺度, 用lexp对gnppd的对数做回归,将拟合值命名为hat。绘制hat与gnppc的连线图,在x轴上标注0.5、5、10、15、20、25、30以及网格线,关闭图例,设定总的标题是“Life expectancy vs. GNP per capita”,副标题是“North, Central,and South America”,备注是“Data source: World bank,1998”,y轴标题是“Life expectancy at birth (years)”。