上手 Stata 图表绘制

上手 Stata 图表绘制

虽然这次课是 《Stata 绘图指引》系列课程的第一讲,但是我不再从 Stata 入门开始讲了,因此建议在学习本系列课程之前先学习 《Stata 编程导论》第一讲:入手 Stata,这样你便可以对 Stata 有初步的了解。进而得以顺利跟进这一系列的课程。

视频讲解

这一系列的课程将结合 A Visual Guide to Stata Graphics (3rd ed) 一书和实际案例展开。

为什么要使用 Stata 绘图

  1. 因为 Stata,假如我们只学习了 Stata 编程而不会使用 Stata 绘图,那么是不是我们的工作流程就不完整了?
  2. 很多 Stata 的命令附带自动的图表生成命令,不过这些自带的图表生成命令绘制出来的图表通常非常的“丑陋”,所以我们有必要学习一些 Stata 绘图的知识,这样我们可以把这些丑陋的图表绘制的更好看些;
  3. 可视化分析。图表是展示数据的最好方式。
  4. 可重复研究。可重复研究要求我们使用代码完整我们所有的研究工作,这样当我们想要重复我们之前的结果的时候,我们只需要把所有的代码运行一遍即可。
  5. Stata 绘制的图表还是蛮漂亮的(我给大家展示下我的一些作品,附件中的 pic 文件夹)!

反正用就对了!

准备工作

A Visual Guide to Stata Graphics (3rd ed) 书中涉及到大量的示例数据集,我们可以使用下面的方法安装该书提供的一个安装包:

1
tssc install vgsg3

该命令包里面提供了本书所需要使用的所有示例数据集和绘图主题(不过我觉得这些绘图主题都很丑,不建议使用)。

例如使用 allstates 数据集和 vg_s2c 主题:

1
2
vguse allstates, clear
graph twoway scatter propval100 ownhome, msymbol(Sh) scheme(vg_s2c)

通常我比较喜欢使用命令缩写的方式,例如上面的命令可以缩写为:

1
sc propval100 ownhome, m(Sh) sch(vg_s2c)

这些简写规则可以通过查阅帮助文档了解。

另外,选择一个好看的绘图主题可以让你一键生成精美的图表,你可以阅读我的这篇推文了解 Stata 里面有哪些绘图主题:这里有 82 个 Stata 绘图主题,你最喜欢那个呢?,最近我比较喜欢 qlean,使用下面的语句可以永久的设定使用 qlean 主题:

1
set scheme qlean, perm

Stata 基本图表类型

所有的复杂图表都是使用基本的图表组合得到的。所以在学习构建复杂图表之前,我们应该首先了解一些 Stata 能绘制哪些基本图表。

散点图: scatter

1
sc propval100 popden

线性拟合图: lfit

1
tw lfit propval100 popden

其它常用的拟合方法:

  • qfit: 二次拟合;
  • mspline: 中值样条;
  • fpfit: 分数多项式拟合;
  • lowess: 局部加权回归;
  • lpoly: 多项式平滑;
  • mband: 中值带。

可以使用 twoway 组合上面的图:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
tw ///
sc ownhome pcturban80 || ///
lfit ownhome pcturban80 || ///
qfit ownhome pcturban80 || ///
mspline ownhome pcturban80 || ///
fpfit ownhome pcturban80 || ///
lowess ownhome pcturban80 || ///
lpoly ownhome pcturban80 || ///
mband ownhome pcturban80 ||, ///
leg(pos(8) size(*0.8) ring(0) ///
col(2) ///
order(1 "散点图" 2 "线性拟合" 3 "二次拟合" ///
4 "中值样条" 5 "分数多项式拟合" 6 "局部加权回归" ///
7 "多项式平滑" 8 "中值带")) ///
ti("Stata 中平滑方法的比较") ///
caption("TidyFriday") ///
ysc(range(50 80)) yla(50(10)80)

另外很多拟合命令后面都可以添加 ci 绘制带置信区间的图表,例如 lfitci,lopyci。

思考:试试哪些可以加?

中间的部分去哪了?

完整的讲义材料可以在加入我的知识星球(线上培训班)后从知识星球下载附件获取~
要了解如何加入,可以阅读关于界面或者添加我的微信咨询。

作业:全球新冠疫情数据堆积图

仿照上面给出的案例绘制全球的新冠疫情数据堆积图。

图表导出

Stata 支持多种格式的图片导出:

  • .ps as(ps) PostScript
  • .eps as(eps) EPS (Encapsulated PostScript)
  • .svg as(svg) SVG (Scalable Vector Graphics)
  • .wmf as(wmf) Windows Metafile
  • .emf as(emf) Windows Enhanced Metafile
  • .pdf as(pdf) PDF (Portable Document Format)
  • .png as(png) PNG (Portable Network Graphics)
  • .tif as(tif) TIFF (Tagged Image File Format)
  • other must specify as()

需要注意 MacOSX 不支持 wmf 和 emf 格式。

知识星球附件链接:https://t.zsxq.com/7EqzvNb

#

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×