I'm trying to combine a line graph with a boxplot in one row. The axes have the same scale, so I would like them to align nicely. However, the ycommon option doesn't work for boxplots and twoway graphs. Is there another way to align them?
Array
Code:
* Example generated by -dataex-. To install: ssc install dataex clear input long incgroup_th int year double ka 1 1995 .6523464458247067 1 1996 .6502027260179435 1 1997 .5948507180650038 1 1998 .5661706349206348 1 1999 .582459372637944 1 2000 .5714285714285715 1 2001 .5798826777087647 1 2002 .6030803571428571 1 2003 .5980456349206349 1 2004 .6040013227513229 1 2005 .5784288194444445 1 2006 .5796006944444444 1 2007 .5569878472222222 1 2008 .5958333333333333 1 2009 .6405864197530865 1 2010 .6405864197530864 1 2011 .6378086419753086 1 2012 .69375 1 2013 .6939814814814814 1 2014 .6677777777777777 1 2015 .6677777777777777 1 2016 .6227777777777777 2 1995 .5054783950617284 2 1996 .46535126396237514 2 1997 .4997170781893004 2 1998 .5056327160493828 2 1999 .4841880341880342 2 2000 .5118357487922706 2 2001 .5165509259259259 2 2002 .5051587301587303 2 2003 .48673469387755103 2 2004 .4671075837742504 2 2005 .5032480893592006 2 2006 .5015079365079366 2 2007 .5085231193926846 2 2008 .4891025641025642 2 2009 .5119658119658119 2 2010 .5190821256038647 2 2011 .5450231481481481 2 2012 .5047777777777778 2 2013 .5327546296296296 2 2014 .5484444444444443 2 2015 .5625 2 2016 .5543438208616779 3 1995 .4632330246913581 3 1996 .43595679012345673 3 1997 .4049382716049383 3 1998 .41666666666666674 3 1999 .4141447368421053 3 2000 .39093750000000005 3 2001 .3097587719298246 3 2002 .306140350877193 3 2003 .26715686274509803 3 2004 .33596491228070174 3 2005 .34047619047619054 3 2006 .34920634920634924 3 2007 .3791062801932367 3 2008 .45425000000000004 3 2009 .46924999999999994 3 2010 .46495535714285735 3 2011 .4469907407407407 3 2012 .5079861111111111 3 2013 .4829861111111111 3 2014 .49134615384615377 3 2015 .46249999999999997 3 2016 .496875 4 1995 .13322482638888888 4 1996 .14518229166666669 4 1997 .1890522875816993 4 1998 .16838235294117646 4 1999 .1654411764705882 4 2000 .15073529411764702 4 2001 .14264705882352938 4 2002 .13749999999999998 4 2003 .145 4 2004 .1173611111111111 4 2005 .1527777777777778 4 2006 .15460526315789477 4 2007 .16052631578947368 4 2008 .15999999999999998 4 2009 .17006944444444444 4 2010 .1663194444444444 4 2011 .16506944444444444 4 2012 .17564599483204135 4 2013 .21306818181818182 4 2014 .21235795454545456 4 2015 .21511627906976752 4 2016 .20581395348837203 end label values incgroup_th incomegroup5 label def incomegroup5 1 "Low Income", modify label def incomegroup5 2 "Lower Middle Income", modify label def incomegroup5 3 "Upper Middle Income", modify label def incomegroup5 4 "High Income", modify separate ka, by(incgroup_th) veryshortlabel gen lastyear = ka if year == 2016 line ka? year, ylabel(0(0.2)1, format(%2.1g)) legend(off) xscale(range(2022)) || /// scatter lastyear year, mlabel(incgroup_th) mcolor(none) name(line, replace) graph box ka, over(incgroup_th, label(labsize(small))) name(box, replace) ylabel(0(0.2)1, format(%2.1g)) graph combine line box, iscale(0.5) ycommon
0 Response to Align boxplot and line graph
Post a Comment