Stata绘图:一个干净整洁的-Stata绘图模板qlean
2020-10-07
侯新烁
14301

连享会   主页 || 推文 || 知乎 || B 站 || 在线课堂

New! 搜推文,找资料,用 lianxh 命令:
安装: ssc install lianxh, replace
使用: lianxh 合成控制
       lianxh DID + 多期, w


作者: 侯新烁 (湘潭大学)
邮箱: houxinshuo@126.com

编者按: 计量画图时,Stata 在默认情况下的图形输出通常为浅蓝色带横向网格底纹的图形,且不同输出图形通常以差异化的颜色加以标注,但很多时候,期刊排版要求图片为可识别的(如黑白风格或者不同标记风格)图片。因此,本次推文为大家介绍一个用户编写的干净而整洁的Stata图形模版 qlean,并结合我们常用的示例数据为大家展示了一下对比效果。

下载链接:https://github.com/rangerqu/qlean

相关推文: Stata:中文期刊风格的纯黑白图形


1. 导言

Stata默认的背景学名称为 light bluish gray,但通常情况下若不加以修饰,图形可能常常不能达到 使用者的审美要求 ,此时我们可以通过设定绘图模版 scheme 的方式来快捷更改图形的整体风格。例如,Stata官方提供了彩色模板 s2color 以及两个黑白模版 s1monos2mono,在我们往期推文中也曾向读者们介绍过 tufteburdlean1lean2 等绘图模版,详见 Stata黑白图形模板:中文期刊风格的纯黑白图形。此外,现在已经可以使用外部命令 grstyle 随意更改 Stata 图形模板了,可通过修改设定以使其适用于期刊的黑白模式。

但对于懒人,或者一定程度上使用 grstyle 命令更改 Stata 模板的操作起来还并不熟练的筒子们,qlean 模版还是很亲民和易用的。

2. 下载方法

该图形模版为作者保存在其 GitHub 账户的个人项目中,链接地址为 https://github.com/rangerqu/qlean ,读者可通过 Clone or Download 按钮,选择 Download ZIP 将程序包下载。

解压后,将 scheme-qlean.scheme scheme-qleanmono.scheme 两文件复制到 Stata 程序的 附加 ado 文件夹中的文件夹 s ,如笔者电脑为 D:\stata15\ado\plus\s ; 将 .style 为后缀的 color 设定文件 复制到文件夹 style , 如 D:\stata15\ado\plus\style。此时即可使用该模版。

scheme文件
style文件

关于 ssc installnet install 的说明: 笔者通过 Stata 的 finditssc 等命令进行了安装实验,并未搜索到与之匹配的已发布命令包。。因此,我们暂时也只能通过调用本地文件位置的方式进行安装。命令方法如下 net install qlean, from("~本地qlean文件夹存储位置") ,其中引用位置部分需根据自己下载的文件包位置确定。同时还需要补充 .pkgstata.toc 文件,因此本次推文仅做说明,如有疑问可联系推文作者( houxinshuo@126.com )。

3. 应用方法

为展示其模版效果,将以 Stata 默认风格为对比基础进行展示。

3.1 散点图

. sysuse "auto.dta", clear  
. twoway scatter price weight 
. twoway scatter price weight, scheme(qlean)
. twoway scatter price weight, scheme(qleanmono)

结果展示:

Stata绘图默认模板
Stata绘图-scheme-qlean
Stata绘图-scheme-qleanmono
. twoway scatter price weight if foreign==0 ||  scatter price weight if foreign==1
. twoway scatter price weight if foreign==0 ||  scatter price weight if foreign==1, scheme(qlean)
. twoway scatter price weight if foreign==0 ||  scatter price weight if foreign==1, scheme(qleanmono)
输入图片说明
输入图片说明
输入图片说明

3.2 折线图

. sysuse uslifeexp,clear

. twoway line le_male   year || line le_female year
. twoway line le_male   year || line le_female year, scheme(qlean)
. twoway line le_male   year || line le_female year, scheme(qleanmono)
输入图片说明
输入图片说明
输入图片说明

3.3 矩阵图

sysuse lifeexp, clear
gen lgnppc = ln(gnppc)
gr matrix popgr lexp lgnp safe
gr matrix popgr lexp lgnp safe, scheme(qlean)
gr matrix popgr lexp lgnp safe, scheme(qleanmono)
输入图片说明
输入图片说明

此处,使用 mono 风格时结果看起来并无差别,所以 qlean 风格结果仅展示一副。

3.4 条形图

. sysuse nlsw88, clear
. graph hbar (mean) wage, over(smsa) over(married) over(collgrad)	
. graph hbar (mean) wage, over(smsa) over(married) over(collgrad) scheme(qlean)
输入图片说明
输入图片说明

4. 几个推荐的黑白模版

结合往期推文和本期介绍的 qlean ,为大家提供几个效果图,方便使用时灵活选择自己中意的图形风格。

主要涉及的风格模版有 tufteburdlean1lean2,如安装方法不可用,可尝试使用 findit 命令搜寻。另外,我们可以通过 mcolor() 选项选择 qlean 模版的色彩搭配风格。

安装方法:

. ssc install scheme_tufte, replace 
. ssc install scheme-burd, replace  
. net install gr0002_3.pkg

应用示例:

. sysuse auto, clear
. twoway lfitci mpg weight || scatter mpg weight
. twoway lfitci mpg weight || scatter mpg weight, scheme(qlean) mc(ply3)
. twoway lfitci mpg weight || scatter mpg weight, scheme(tufte)
. twoway lfitci mpg weight || scatter mpg weight, scheme(burd)
输入图片说明
. twoway lfitci mpg weight || scatter mpg weight, scheme(lean1)
输入图片说明
. twoway lfitci mpg weight || scatter mpg weight, scheme(lean2)
输入图片说明

5. 代码汇总

. sysuse "auto.dta", clear  
. twoway scatter price weight 
. twoway scatter price weight, scheme(qlean)
. twoway scatter price weight, scheme(qleanmono)

. twoway scatter price weight if foreign==0 ||  scatter price weight if foreign==1
. twoway scatter price weight if foreign==0 ||  scatter price weight if foreign==1, scheme(qlean)
. twoway scatter price weight if foreign==0 ||  scatter price weight if foreign==1, scheme(qleanmono)

. sysuse uslifeexp,clear

. twoway line le_male   year || line le_female year
. twoway line le_male   year || line le_female year, scheme(qlean)
. twoway line le_male   year || line le_female year, scheme(qleanmono)

. sysuse lifeexp, clear
. gen lgnppc = ln(gnppc)
. gr matrix popgr lexp lgnp safe
. gr matrix popgr lexp lgnp safe, scheme(qlean)
. gr matrix popgr lexp lgnp safe, scheme(qleanmono)

. sysuse nlsw88, clear
. graph hbar (mean) wage, over(smsa) over(married) over(collgrad)	
. graph hbar (mean) wage, over(smsa) over(married) over(collgrad) scheme(qlean)	

. ssc install scheme_tufte, replace 
. ssc install scheme-burd, replace  
. net install gr0002_3.pkg  

. sysuse auto, clear
. twoway lfitci mpg weight || scatter mpg weight
. twoway lfitci mpg weight || scatter mpg weight, scheme(qlean) mc(ply3)
. twoway lfitci mpg weight || scatter mpg weight, scheme(tufte)
. twoway lfitci mpg weight || scatter mpg weight, scheme(burd)
. twoway lfitci mpg weight || scatter mpg weight, scheme(lean1)
. twoway lfitci mpg weight || scatter mpg weight, scheme(lean2)

6. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh 模板
安装最新版 lianxh 命令:
ssc install lianxh, replace

资源共享


尊敬的老师 / 亲爱的同学们:
连享会致力于不断优化和丰富课程内容,以确保每位学员都能获得最有价值的学习体验。为了更精准地满足您的学习需求,我们诚挚地邀请您参与到我们的课程规划中来。
请您在下面的问卷中,分享您 感兴趣的学习主题或您希望深入了解的知识领域 。您的每一条建议都是我们宝贵的资源,将直接影响到我们课程的改进和创新。
我们期待您的反馈,因为您的参与和支持是我们不断前进的动力。感谢您抽出宝贵时间,与我们共同塑造更加精彩的学习旅程!https://www.wjx.cn/vm/YgPfdsJ.aspx# 再次感谢大家宝贵的意见!


关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。more……
  • 扫码加入连享会微信群,提问交流更方便