I am trying to create a graph like the one below, but I would like to show one density for 2016, 2017, 2018 and quarterly ones for 2019 and 2020.
I even tried to create another date variable and converting it to string, but it does not show the densities correctly.
Any idea?
I copied the code and a sample of the data below.
Thanks
Array
Code:
drop if y==. gen yq = qofd(date) format yq %tq gen id_c=__+_what encode id_c, gen(id) xtset id date local bw = .02 local dscale = 230 local ygap = 100 gen year=year(date) gen q = quarter(date) sum yq, mean local xmin = r(min) local xmax = r(max) levelsof yq if q==2 | q==4, local(xval) local n_y = r(r) local i 1 foreach x of local xval { * Expectation densities kdensity y if yq==`x', gen(x_`x' d_`x') bwidth(`bw') nogr sum d_`x', mean local scalefac = (.3/(r(max)-r(min)))*(1/`n_y')*(`dscale'/100) replace d_`x' = `scalefac' * (d_`x'-r(min)) replace d_`x' = d_`x' + (`x'-`xmin')/(`xmax'-`xmin') gen nd_`x' = (`x'-`xmin')/(`xmax'-`xmin') local kdplots `kdplots' rarea nd_`x' d_`x' x_`x', horiz finten(35) pstyle(p1) sort || local z = (`x'-`xmin')/(`xmax'-`xmin') local xlab `xlab' `z' "`=string(`x',"%tq")'" local ++i } tw `kdplots' , yti(Copod) xlab(`xlab',notick angle(vert)) leg(off) graphregion(color(white)) bgcolor(white)
Code:
* Example generated by -dataex-. To install: ssc install dataex clear input float date str6 __ double y byte what 20164 "BNP" .595155179 3 20164 "BNP" .586713291 2 20164 "CA" .55202926 3 20164 "CA" .618743833 1 20164 "SOCGEN" .751988722 1 20164 "SOCGEN" .661390955 2 20165 "BNP" .59361297 2 20165 "BNP" .595185039 3 20165 "CA" .547113688 3 20165 "CA" .615914004 1 20165 "SOCGEN" .671195759 2 20165 "SOCGEN" .757600628 1 20166 "BNP" .597819744 3 20166 "BNP" .5887008 2 20166 "CA" .560512888 3 20166 "CA" .628636291 1 20166 "SOCGEN" .758623772 1 20166 "SOCGEN" .666096226 2 20167 "BNP" .589067504 2 20167 "BNP" .601002892 3 20167 "CA" .558430921 3 20167 "CA" .622367024 1 20167 "SOCGEN" .75073729 1 20167 "SOCGEN" .660236265 2 20170 "BNP" .609983621 3 20170 "BNP" .598825588 2 20170 "CA" .568742461 3 20170 "CA" .632147025 1 20170 "SOCGEN" .670257331 2 20170 "SOCGEN" .758860316 1 20171 "BNP" .603105173 3 20171 "BNP" .594756837 2 20171 "CA" .634644375 1 20171 "CA" .566651882 3 20171 "SOCGEN" .763920224 1 20171 "SOCGEN" .672636294 2 20172 "BNP" .599205904 2 20172 "BNP" .592805642 3 20172 "CA" .548854271 3 20172 "CA" .624233446 1 20172 "SOCGEN" .686686206 2 20172 "SOCGEN" .772653104 1 20173 "BNP" .598818049 2 20173 "BNP" .589019138 3 20173 "CA" .54166553 3 20173 "CA" .618328658 1 20173 "SOCGEN" .772112301 1 20173 "SOCGEN" .68763468 2 20174 "BNP" .598219957 2 20174 "BNP" .592875439 3 20174 "CA" .619630766 1 20174 "CA" .545982966 3 20174 "SOCGEN" .682913408 2 20174 "SOCGEN" .768107632 1 20177 "BNP" .584335113 3 20177 "BNP" .583966154 2 20177 "CA" .627475392 1 20177 "CA" .550696743 3 20177 "SOCGEN" .673171558 2 20177 "SOCGEN" .767510377 1 20178 "BNP" .59047524 3 20178 "BNP" .582013096 2 20178 "CA" .55981763 3 20178 "CA" .632062626 1 20178 "SOCGEN" .761962385 1 20178 "SOCGEN" .665198189 2 20179 "BNP" .58752008 3 20179 "BNP" .581515683 2 20179 "CA" .557744744 3 20179 "CA" .632221136 1 20179 "SOCGEN" .667814357 2 20179 "SOCGEN" .764804718 1 20180 "BNP" .589147896 2 20180 "BNP" .595906033 3 20180 "CA" .633233793 1 20180 "CA" .562111322 3 20180 "SOCGEN" .764681808 1 20180 "SOCGEN" .671097401 2 20181 "BNP" .595842847 3 20181 "BNP" .588687052 2 20181 "CA" .561805038 3 20181 "CA" .632620386 1 20181 "SOCGEN" .670142578 2 20181 "SOCGEN" .763786558 1 20184 "BNP" .587902272 2 20184 "BNP" .594934998 3 20184 "CA" .631997403 1 20184 "CA" .560941004 3 20184 "SOCGEN" .763465052 1 20184 "SOCGEN" .669617318 2 20185 "BNP" .586616782 2 20185 "BNP" .587297012 3 20185 "CA" .626756347 1 20185 "CA" .551470333 3 20185 "SOCGEN" .766635027 1 20185 "SOCGEN" .67376549 2 20186 "BNP" .586739103 3 20186 "BNP" .583380027 2 20186 "CA" .551957028 3 20186 "CA" .626196909 1 end format %tdnn/dd/YY date label values what what label def what 1 "BNP", modify label def what 2 "CA", modify label def what 3 "SOCGEN", modify
0 Response to Graph displaying part years and part quarters on the y axis,
Post a Comment