查看原文
其他

客官,来个饼图!

王凯丽 Stata and Python数据分析 2022-03-15

有问题,不要怕!点击推文底部“阅读原文”下载爬虫俱乐部用户问题登记表并按要求填写后发送至邮箱statatraining@163.com,我们会及时为您解答哟~

喜大普奔~爬虫俱乐部的github主站正式上线了!我们的网站地址是:https://stata-club.github.io,粉丝们可以通过该网站访问过去的推文哟~

       哈喽,诸君安!从前的从前,爬虫君们已经讲过很多图形的绘制,《至忙至闲爬虫君,至繁至简散点图》、《我来告诉你如何用Stata做出漂亮的图形:柱状图的绘制》等等,不知你们是否还记得?

       “故事的小黄花/从出生那年就飘着/童年的荡秋千/随记忆一直晃到现在”

       今天爬虫君跟大家分享的是如何用Stata画出完美的饼图。饼图主要应用于统计数据分析,可以比较直观地展示数据分布的结果。饼图的绘制主要涉及绘图区图表标题图例等。绘制饼图时我们用到的命令是graph pie

首先让我们来了解一下饼图绘制的语法结构:

1.根据变量绘制图形

graph pie varlist [if] [in] [weight] [, options]

2.根据类别绘制图形

graph pie varname [if] [in] [weight], over(varname) [options]

graph pie [if] [in] [weight], over(varname) [options]

其中varlistvarname是将要绘制的饼图的变量,[if]是条件语句,[in]表示范围,[weight]表示权重,[, options]表示选项,其中包括非常丰富的内容。[, options]中的具体选项包括:plabel(...)可以对绘图区扇面上的标签进行设置,legend(...)是对图例进行具体设定,title(...)用来设定图表的一级标题,subtitle(...)用来设定图表的子标题,此外还有missingallcategoriessort等选项。

plabel()

我们先用auto数据为例简单演示一下如何绘制饼图:

sysuse auto,clear

graph pie,over(foreign) title("默认")

graph save pie1,replace

graph pie,over(foreign) plabel(_all percent) title("占比")

graph save pie2,replace

graph pie,over(foreign) plabel(_all sum) title("总数")

graph save pie3,replace

graph pie,over(foreign) plabel(_all name) title("类别名")

graph save pie4,replace

graph combine pie1.gph pie2.gph pie3.gph pie4.gph

运行结果如下:

上图我们主要对比了plabel(_all percent)plabel(_all sum)plabel(_all name)的区别,根据不同的需要我们展示相应的标签在图形上。我们还可以对标签的大小、颜色、位置(标签到原点的距离)、格式(保留几位小数)进行设定。

graph pie,over(foreign) plabel(_all percent, size(*1.0) color(white) format(%4.0f)) title("1.0/白色/保留整数/默认位置")

graph save pie5,replace

graph pie,over(foreign) plabel(_all percent, size(*1.5) color(yellow) format(%4.2f) gap(-5)) title("1.5/粉色/保留1位小数/-5")

graph save pie6,replace

graph combine pie5.gph pie6.gph

pie()

我们可以用pie()选项设置扇面是否突出以及扇面的颜色。当我们要绘制的饼图分别是饼图的扇面1突出,颜色为橘色或饼图的扇面2突出,颜色为橘色时,命令如下:

graph pie,over(foreign) plabel(_all percent,size(*1.5) color(white) format(%4.2f)) pie(1, explode color(orange)) title("扇面1突出/橘色")

graph save pie7,replace

graph pie,over(foreign) plabel(_all percent,size(*1.5) color(white) format(%4.2f)) pie(2, explode color(orange)) title("扇面2突出/橘色")

graph save pie8,replace

graph combine pie7.gph pie8.gph

legend()

关于图例的设定,我们在《修改图形图例》中已经具体介绍,在此就不多加赘述。

graph pie,over(foreign) plabel(_all percent,size(*1.5) color(white) format(%4.2f)) ///

pie(2, explode color(orange)) title("默认")

graph save pie9,replace

graph pie,over(foreign) plabel(_all percent,size(*1.5) color(white) format(%4.2f)) ///

pie(2, explode color(orange))  legend(off) title("不显示图例")

graph save pie10,replace

graph pie,over(foreign) plabel(_all percent,size(*1.5) color(white) format(%4.2f)) ///

pie(2, explode color(orange))  legend(on pos(3) cols(1)) title("显示/3点钟位置/1")

graph save pie11,replace

graph pie,over(foreign) plabel(_all percent,size(*1.5) color(white) format(%4.2f)) ///

pie(2, explode color(orange))  legend(on pos(12) cols(2)) title("显示/12点钟位置/2")

graph save pie12,replace

graph combine pie9.gph pie10.gph pie11.gph pie12.gph

by()

我们以2009-2016年全国学术型学位毕业生数量的数据为例,分年份显示硕士与博士生毕业人数占当年总毕业生人数的比例时需要用到by()选项,下面进行作图:

clear

import excel using "C:\Users\kaili小鬼\Desktop\学术型学位研究生毕业数.xlsx", firstrow clear

graph pie 硕士 博士, by(年份) plabel(_all percent, size(*0.8) color(white) ///

format(%4.0f)) pie(2, explode color(orange))

运行结果如下图:

今天的介绍就到这里啦~绘制饼图还涉及到很多的选项,大家可以自己练习一下哦~

注:此推文中的图片及封面均来源于网络!如有雷同纯属巧合!


以上就是今天给大家分享的内容了,说得好就赏个铜板呗!有钱的捧个钱场,有人的捧个人场~。另外,我们开通了苹果手机打赏通道,只要扫描下方的二维码,就可以打赏啦!

应广大粉丝要求,爬虫俱乐部的推文公众号打赏功能可以开发票啦,累计打赏超过1000元我们即可给您开具发票,发票类别为“咨询费”。用心做事,只为做您更贴心的小爬虫。第一批发票已经寄到各位小主的手中,大家快来给小爬虫打赏呀~

文字编辑/闫续文

技术总编/刘贝贝


往期推文推荐:

1.高校学术大神:你的导师上榜了吗?

2.中国高校财经、管理与综合类期刊灌水排行榜

3.命令sum2docx输出统计量表到docx文件

4.用reg2docx报告你的实证结果吧!

5.爬虫俱乐部又出新命令了——wordconvert转换你的word文件

6.putdocx+wordconvert—将实证结果输出到Word(.docx)文档

7.Stata 15之Markdown——没有做不到,只有想不到!

8.矩阵和宏的故事

9.shellout,open anything

10.Putpdf--神奇的转换工具



关于我们

微信公众号“爬虫俱乐部”分享实用的stata命令,欢迎转载、打赏。爬虫俱乐部是由李春涛教授领导下的研究生及本科生组成的大数据分析和数据挖掘团队。

此外,欢迎大家踊跃投稿,介绍一些关于stata的数据处理和分析技巧。

投稿邮箱:statatraining@163.com

投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿”+“推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到关于stata分析数据的问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

欢迎关注爬虫俱乐部

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存