Showing posts with label twoway area. Show all posts
Showing posts with label twoway area. Show all posts

May 25, 2016

Random graphs (85): Area plot

unzipfile ZA4582_v1-0-0.dta.zip

use ZA4582_v1-0-0.dta, clear

recode v151 (9 = .a "No response") ///
            (8 = .b "Don't know") ///
            (7 = .c "Refused") ///
            (6 = .d "None of the strata") ///
            (5 =  5 "Upper class") ///
            (4 =  4 "Upper middle class") ///
            (3 =  3 "Middle class") ///
            (2 =  2 "Working class") ///
            (1 =  1 "Lower class") ///
           , gen(subjclass)

qui tab subjclass, gen(subjective)

// Western Germany only
generate east = (ost_west == 2)
drop if east

// Collapse data by year
collapse subjective*, by(year)

generate lower        =                subjective1 * 100
generate working      = lower       + (subjective2 * 100)
generate middle       = working     + (subjective3 * 100)
generate uppermiddle  = middle      + (subjective4 * 100)
generate upper        = uppermiddle + (subjective5 * 100)
   
twoway (area upper year) ///
       (area uppermiddle year) ///
       (area middle year) ///
       (area working year) ///
       (area lower year) ///
      , xlabel(1980 (5) 2010 2014) xmtick(1980 (1) 2014) ///
        ylabel(0 (10) 100) ymtick(0 (5) 100) ///
        xtitle("") ytitle(%) ///
        legend(order(1 "Upper class" ///
                     2 "Upper middle class" ///
                     3 "Middle class" ///
                     4 "Working class" ///
                     5 "Lower class") ///
              title("Subjective social class", size(*.8)) pos(2)) ///
        note(" " "{it:Source:} German General Social Survey (Allbus), doi: 10.4232/1.12439. {it:Note:} Western Germany only.", span)

Mar 11, 2016

Random graphs (63): Area plots

generate home = .
replace  home = 1 if homewk == 1 | homewk == 2
replace  home = 0 if homewk == 3

generate usually = .
replace  usually = 1 if homewk == 1
replace  usually = 0 if homewk == 2 | homewk == 3

generate sometimes = .
replace  sometimes = 1 if homewk == 2
replace  sometimes = 0 if homewk == 1 | homewk == 3

collapse (mean) home usually sometimes, by(country refyear)

replace home = home * 100
replace usually = usually * 100
replace sometimes = sometimes * 100

drop if country == 14 & refyear < 2006  

replace sometimes = sometimes + usually

twoway (area sometimes refyear, by(country, note("{it:Source:} EU Labor Force Survey 1998{c 150}2013, HR 2004/5 removed", span))) ///
       (area usually refyear, by(country)), ///
        ytitle("% of labor force working from home") ///
        xlabel(1998 2000 2005 2010 2013, ang(h) alternate) xtitle("") ///
        legend(order(2 "% usually" 1 "% sometimes") row(1) pos(9)) ///
        name(graph, replace)