如果饼图中的变量低于指定的百分比,是否有办法抑制变量的标记?也许,当在图形饼图选项中指定plabel()时,有一种语法可以强制Stata如果其份额低于10%,则不会在饼图中标记变量?虽然我可以调整plabel()中饼图标签的字体大小,但仍有几个标签因其变量的小份额而重叠。我知道我可以指定如何标记饼图的各个切片,但是我生成了大量的图形,并且不希望重新标记单个切片。
答案 0 :(得分:2)
据我所知,目前没有官方的方法可以做到这一点。这是一种笨重的方式,它依赖于顺时针方向从12点开始重新排序从最大到最小的类别。当您的变量被排序时,这种行为将是不可取的,但我还是更喜欢直方图:
sysuse auto, clear
foreach var of varlist rep78 mpg turn {
qui count if !missing(`var')
bys `var': gen frac = _N/r(N)
gsort -frac
levelsof `var' if frac>.10
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
drop frac
}
所有重新排序的必要条件是,Stata从12点开始标记从1到k的饼图切片,并且无法将标签附加到基础数值。