语句格式:
graph pie [variable list], [options]复制代码|---|--------------------------------------------------|
| 1 | graph pie div1_revenue div2_revenue div3_revenue |
| 2 | graph pie revenue, over(division) |
| 3 | graph pie, over(popgroup) |
|---|--------------------------------------------------|复制代码基于不同数据格式,具体可分三种饼图:
第1种:多变量饼图:如依次绘制div1_revenue div2_revenue div3_revenue这三个部门的营业额
第2种:依某一变量分组(即over( )内)如上依照变量division分组的不同部门营业额
第3种:仅描述单一变量的取值概况,如上绘制popgroup变量内每一组(group)相对应的观测值数目
以第3种为例,
设定绘图格式为s1colorsysuse auto, clear
set scheme s1color复制代码绘制饼图gr pie ,over (rep78)复制代码
2015-11-11 19:19:24 上传
下载附件 (8.73 KB)
注:实际rep78为修理次数,包含缺失值及1-5次共计6种情况/类别,饼图绘制默认不含缺失值
添加缺失值gr pie ,over(rep78) missing复制代码
2015-11-11 19:21:06 上传
下载附件 (8.96 KB)
逆时针排序 gr pie ,over (rep78) noclockwise复制代码
2015-11-11 19:22:15 上传
下载附件 (8.63 KB)
调整第一块扇区角度(绿色区域)假设从水平0°开始 gr pie,over (rep78) angle0(0)复制代码
2015-11-11 19:23:27 上传
下载附件 (8.42 KB)
//默认第一扇区从90度开始
按百分比大小加以调整区域顺序:升序/降序
gr pie ,over(rep78) sort
gr pie ,over(rep78) sort descending复制代码
2015-11-11 19:25:07 上传
下载附件 (8.85 KB)
2015-11-11 19:25:16 上传
下载附件 (8.48 KB)
突出/分离某一饼块:explodegr pie ,over(rep78) pie(3,explode)复制代码
2015-11-11 19:26:20 上传
下载附件 (9.07 KB)
显示百分比/类别名/总数: gr pie ,over(rep78) plabel(_all percent,format("%7.2f"))
gr pie ,over(rep78) plabel(_all sum)
gr pie ,over(rep78) plabel(_all name,gap(0)) 复制代码
2015-11-11 19:28:31 上传
下载附件 (9.97 KB)
2015-11-11 19:28:49 上传
下载附件 (9.18 KB)
2015-11-11 22:41:59 上传
下载附件 (9.03 KB)
同时显示百分比/类别名: (注:图例的处理方法之一:在图中直接标注) gr pie ,over(rep78) plabel(_all name,gap(6)) legend(off) ///
plabel(_all percent,gap(-3) format("%7.2f"))复制代码
2015-11-11 19:30:24 上传
下载附件 (9.61 KB)
gap()用于调节文本与扇心距离,默认为0,大于0使文本内容向外移动,反之内移
附:以上可见rep78为3和4的观测取值在20%以上,以下仅标注这两种情况:
sysuse auto, clear
foreach var of varlist rep78{
qui count if !missing(`var')
bys `var': gen frac = _N/r(N)
gsort -frac
levelsof `var' if frac>.20
local wc: word count `r(levels)'
local plabel ""
forvalues i=1/`wc'{
local plabel "`plabel' plabel(`i' name)"
}
graph pie, over(`var') `plabel' sort descending ///
legend(row(1) pos(6) rowgap(*0.3) region(lcolor(none)))
drop frac
}复制代码
2015-11-14 00:25:22 上传
下载附件 (8.48 KB)
*第一种数据结构:
clear
input sales marketing research development
12 14 2 8
end
label var sales "Sales"
label var market "Marketing"
label var research "Research"
label var develop "Development"
#d;
graph pie sales marketing research development,
plabel(_all name, size(*1.5) color(white))
legend(off)
plotregion(lstyle(none))
title("Expenditures, XYZ Corp.")
subtitle("2002")
note("Source: 2002 Financial Report (fictional data)");
#d cr复制代码
2015-11-17 01:13:22 上传
下载附件 (10.59 KB)
*第二种数据结构:
clear
input qtr str11 division cost
1 Development 1
1 Marketing 4.5
1 Research .3
1 Sales 3
2 Development 2
2 Marketing 3
2 Research .5
2 Sales 4
3 Development 2
3 Marketing 4
3 Research .6
3 Sales 3
4 Development 3
4 Marketing 2.5
4 Research .6
4 Sales 2
end
#d;
graph pie cost, over(division) plabel(_all name, size(*1.5) color(white))
legend(off)
plotregion(lstyle(none))
title("Expenditures, XYZ Corp.")
subtitle("2002")
note("Source: 2002 Financial Report (fictional data)");
#d cr复制代码
2015-11-17 01:16:05 上传
下载附件 (10.79 KB)
|