* DATA Version: SOEP 32
* Author: Mathis Schroeder, Jan Goebel
* produces figure "Cross-Sectional Development of Sample Size"
clear all
use *netto psample letztbef using ~/data/soep/soep32/stata/ppfad.dta
qui sum letztbef
local last=r(max)
dis `last'
qui tab psample
local cols=r(r)
levelsof psample, local(samps)
matrix define countme=J(`last'-1984+1,`cols'+1,.)
local row=1
qui foreach wv in a b c d e f g h i j k l m n o p q r s t u v w x y z ba bb bc bd be bf {
forvalues i=1/`cols' {
local smp : word `i' of `samps'
count if inrange(`wv'netto,10,19) & psample==`smp'
if r(N)>0 {
matrix countme[`row',`i']=r(N)
}
}
local row=`row'+1
}
local rownm " "
local row=1
forvalues yr=1984/`last' {
matrix countme[`row',`cols'+1]=`yr'
local rownm="`rownm'" + " " + string(`yr')
local row=`row'+1
}
matrix rownames countme=`rownm'
local colnm "A B C D E F G H I J K L1 L2 L3 M1 M2"
matrix colnames countme=`colnm' year
svmat countme, names(col)
keep `colnm' year
dropmiss, obs force
set linesize 255
list
* note: set scheme(s2color) to scheme(s2mono) for black and white if necessary.
#d;
graph bar (first) `colnm', over(year, label(angle(ninety))) stack
bar( 1, lcolor(black) lpattern(solid)) bar( 2, lcolor(black) lpattern(solid)) bar( 3, lcolor(black) lpattern(solid))
bar( 4, lcolor(black) lpattern(solid)) bar( 5, lcolor(black) lpattern(solid)) bar( 6, lcolor(black) lpattern(solid))
bar( 7, lcolor(black) lpattern(solid)) bar( 8, lcolor(black) lpattern(solid)) bar( 9, lcolor(black) lpattern(solid))
bar(10, lcolor(black) lpattern(solid)) bar(11, lcolor(black) lpattern(solid)) bar(12, lcolor(black) lpattern(solid))
bar(13, lcolor(black) lpattern(solid)) bar(14, lcolor(black) lpattern(solid)) bar(15, lcolor(black) lpattern(solid))
bar(16, lcolor(black) lpattern(solid))
ylabel(, angle(zero))
legend(order(1 "Sample A" 2 "Sample B" 3 "Sample C" 4 "Sample D" 5 "Sample E"
6 "Sample F" 7 "Sample G" 8 "Sample H" 9 "Sample I" 10 "Sample J"
11 "Sample K" 12 "Sample L1" 13 "Sample L2" 14 "Sample L3" 15 "Sample M1" 16 "Sample M2")
cols(6) region(lcolor(white)) position(12) symxsize(small))
scheme(s2color) xsize(20) ysize(13) graphregion(fcolor(white));
#d cr
graph export ../graphics/crossdevel.eps, replace
shell convert ../graphics/crossdevel.eps ../graphics/crossdevel.png