搜索
人大经济论坛 附件下载

附件下载

所在主题:
文件名:  jscatter.rar
资料下载链接地址: https://bbs.pinggu.org/a-1876677.html
本附件包括:
  • jscatter.do
附件大小:
831 Bytes   举报本内容

Stata 12 Graphics


Dawn Koffman

Office ofPopulation Research

Princeton University



输入数据

  1. clear
  2. input str14 country school1 school2 agemarriage1 agemarriage2
  3. bangladesh 3.3 4.5 14.8 15.2
  4. bolivia 6.9 7.6 19.8 20.1
  5. colombia 7.9 8.6 20.3 20.3
  6. dr 7.9 8.6 18.3 18.3
  7. egypt 5.5 7.3 18.9 19.7
  8. haiti 3.1 4.3 19.6 19.4
  9. india 3.6 4.3 16.9 17.1
  10. indonesia 5.9 7.5 18.1 19.3
  11. morocco 1.6 2.7 18.7 19.6
  12. nepal 2.4 3.6 16.9 17.4
  13. pakistan 1.5 2.8 17.9 18.4
  14. peru 8.1 8.8 20.2 20.6
  15. end
复制代码

/*标记趋势,分析样本点-pcarrow*/

  1. local sample MARRIED
  2. local x school
  3. local y agemarriage
  4. local note "Source: Two most recent DHS standard surveys, as of 5/2013"
  5. local xtitle "years of school"
  6. local ytitle "age at marriage"
  7. local ylabel ", angle(0)"
  8. gen pos = 3
  9. replace pos = 12 if country == "morocco"
  10. #delimit ;
  11. twoway pcarrow `y'1 `x'1 `y'2 `x'2,
  12. barbsize(1) lcolor(black) mcolor(black)
  13. || scatter `y'2 `x'2, mcolor(none)
  14. mlabel(country) mlabvposition(pos)
  15. || scatter `y'1 `x'1, msym(o)
  16. mcolor(black) msize(small)
  17. note("`note'", size(vsmall))
  18. ytitle("`ytitle'") xtitle("`xtitle'")
  19. ylabel(`ylabel')
  20. legend(off);
  21. #delimit cr
复制代码

例二:See SJ 5(2):282-284 (2005) and 9(4):621-639 (2009).

  1. u anorexia, replace
  2. bysort treatment (before after) : gen order1 = _n - _N/2
  3. twoway pcarrow before order1 after order1, pstyle(p1) || ///
  4. scatter before order1, pstyle(p1) ms(O) xla(none) xtitle("") yla(, ang(h)) ///
  5. ytitle("weight, lb") by(treatment, row(1) note("") legend(off)) ///
  6. saving(g12, asis replace)
复制代码

数据:


直方图:

  1. set scheme s2mono
  2. sysuse nlsw88.dta, clear
  3. keep if age >=40 | age <= 44
  4. #delimit ;
  5. twoway histogram wage if wage <= 20, percent fcolor(gs12) lcolor(gs12) bin(30)
  6. title("Hourly Wage Distribution, Women 40-44")
  7. note("Source: Stata 12 NLSW 1988 extract", span)
  8. ylabel(, angle(0));
  9. #delimit cr
复制代码

叠加直方图:

  1. #delimit ;
  2. twoway histogram wage if union == 1 & wage <= 20,
  3. percent fcolor(gs12) lcolor(gs12) bin(30) ||
  4. histogram wage if union == 0 & wage <= 20,
  5. percent fcolor(none) lcolor(black) bin(30)
  6. title("Hourly Wage Distribution by Union Status, Women 40-44")
  7. note("Source: Stata 12 NLSW 1988 extract", span) ylabel(, angle(0))
  8. legend(ring(0) pos(1) cols(1) order(1 "Union" 2 "Non-Union"));
  9. #delimit cr
复制代码

盒形图(box plot)

  1. #delimit ;
  2. graph box wage if age >= 40 & age <= 44, over(race)
  3. title("Hourly Wage by Race, Women 40-44 (n=918)")
  4. note("Source: Stata 12 NLSW 1988 extract")
  5. ylabel(, angle(0));
  6. #delimit cr
复制代码

分类别散点图

  1. #delimit ;
  2. twoway scatter wage race if age >= 40 & age <= 44,
  3. title("Hourly Wage by Race, Women 40-44 (n=918)")
  4. note("Source: Stata 12 NLSW 1988 extract")
  5. xlabel(1 "white" 2 "black" 3 "other")
  6. xtitle("") xscale(range(0.5 3.5))
  7. ylabel(, angle(0));
  8. #delimit cr
复制代码

分类别散点图(抖动)

  1. #delimit ;
  2. twoway scatter wage race if age >= 40 & age <= 44,
  3. jitter(25) msize(tiny) mcolor(gs5)
  4. title("Hourly Wage by Race, Women 40-44 (n=918)")
  5. note("Source: Stata 12 NLSW 1988 extract")
  6. xlabel(1 "white" 2 "black" 3 "other", noticks)
  7. xtitle("") xscale(range(0.5 3.5)) ylabel(, angle(0));
  8. #delimit cr
复制代码

双向条形图

  1. egen median = median(wage), by(race)
  2. egen upq = pctile(wage), p(75) by(race)
  3. egen loq = pctile(wage), p(25) by(race)
  4. egen iqr = iqr(wage), by(race)
  5. #delimit ;
  6. twoway rbar med upq race, barwidth(0.7) blc(black) bfc(none) lwidth(medthick) ||
  7. rbar med loq race, barwidth(0.7) blc(black) bfc(none) lwidth(medthick)
  8. title("Hourly Wage by Race, Women 40-44 (n=918)")
  9. note("Source: Stata 12 NLSW 1988 extract")
  10. xlabel(1 "white" 2 "black" 3 "other", noticks) xtitle("")
  11. xscale(range(0.5 3.5))
  12. yscale(range(0 42))
  13. ylabel(0 (10) 40, angle(0))
  14. ytitle("hourly wage")
  15. legend(off);
  16. #delimit cr
复制代码

盒形图(+散点)

  1. *Boxplot with Whiskers and Scatter
  2. sysuse nlsw88.dta, clear
  3. set scheme s2mono
  4. egen median = median(wage), by(race)
  5. egen upq = pctile(wage), p(75) by(race)
  6. egen loq = pctile(wage), p(25) by(race)
  7. egen iqr = iqr(wage), by(race)
  8. egen upper = max(min(wage, upq + 1.5 * iqr)), by(race)
  9. egen lower = min(max(wage, loq - 1.5 * iqr)), by(race)
  10. #delimit ;
  11. twoway scatter wage race, jitter(25) msize(tiny) mcolor(gs9) ||
  12. rbar med upq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick) ||
  13. rbar med loq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick) ||
  14. rspike upq upper race, lwidth(medthick) ||
  15. rspike loq lower race, lwidth(medthick)
  16. title("Hourly Wage by Race, Women 40-44 (n=918)")
  17. note("Source: Stata 12 NLSW 1988 extract")
  18. xlabel(1 "white" 2 "black" 3 "other", noticks) xtitle("")
  19. xscale(range(0.5 3.5))
  20. yscale(range(0 42))
  21. ylabel(0 (10) 40, angle(0))
  22. ytitle("hourly wage")
  23. legend(off);
  24. #delimit cr
复制代码

  1. egen median = median(wage), by(race)
  2. egen upq = pctile(wage), p(75) by(race)
  3. egen loq = pctile(wage), p(25) by(race)
  4. egen iqr = iqr(wage), by(race)
  5. #delimit ;
  6. twoway scatter wage race, jitter(25) msize(tiny) mcolor(gs9) ||
  7. rbar med upq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick)||
  8. rbar med loq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick)
  9. title("Hourly Wage by Race, Women 40-44 (n=918)")
  10. note("Source: Stata 12 NLSW 1988 extract")
  11. xlabel(1 "white" 2 "black" 3 "other", noticks) xtitle("")
  12. xscale(range(0.5 3.5))
  13. yscale(range(0 42))
  14. ylabel(0 (10) 40, angle(0))
  15. ytitle("hourly wage")
  16. legend(off);
  17. #delimit cr
复制代码

盒式-散点-虚线图-帽线

  1. egen median = median(wage), by(race)
  2. egen upq = pctile(wage), p(75) by(race)
  3. egen loq = pctile(wage), p(25) by(race)
  4. egen iqr = iqr(wage), by(race)
  5. egen upper = max(min(wage, upq + 1.5 * iqr)), by(race)
  6. egen lower = min(max(wage, loq - 1.5 * iqr)), by(race)
  7. #delimit ;
  8. twoway scatter wage race, jitter(25) msize(tiny) mcolor(gs9) ||
  9. rbar med upq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick) ||
  10. rbar med loq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick) ||
  11. rspike upq upper race, lwidth(medthick) ||
  12. rspike loq lower race, lwidth(medthick)
  13. title("Hourly Wage by Race, Women 40-44 (n=918)")
  14. note("Source: Stata 12 NLSW 1988 extract")
  15. xlabel(1 "white" 2 "black" 3 "other", noticks) xtitle("")
  16. xscale(range(0.5 3.5))
  17. yscale(range(0 42))
  18. ylabel(0 (10) 40, angle(0))
  19. ytitle("hourly wage")
  20. legend(off);
  21. #delimit cr
复制代码

盒式-散点-虚线-帽线-均值图

  1. egen median = median(wage), by(race)
  2. egen upq = pctile(wage), p(75) by(race)
  3. egen loq = pctile(wage), p(25) by(race)
  4. egen iqr = iqr(wage), by(race)
  5. egen upper = max(min(wage, upq + 1.5 * iqr)), by(race)
  6. egen lower = min(max(wage, loq - 1.5 * iqr)), by(race)
  7. #delimit ;
  8. twoway scatter wage race, jitter(25) msize(tiny) mcolor(gs9) ||
  9. rbar med upq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick) ||
  10. rbar med loq race, barwidth(0.70) blc(black) bfc(none) lwidth(medthick) ||
  11. rcap loq lower race, lcolor(black) msize(*4) lwidth(medthick) ||
  12. rcap upq upper race, lcolor(black) msize(*4) lwidth(medthick)
  13. title("Hourly Wage by Race, Women 40-44 (n=918)")
  14. note("Source: Stata 12 NLSW 1988 extract")
  15. xlabel(1 "white" 2 "black" 3 "other", noticks) xtitle("")
  16. xscale(range(0.5 3.5))
  17. yscale(range(0 42))
  18. ylabel(0 (10) 40, angle(0))
  19. ytitle("hourly wage")
  20. legend(off);
  21. #delimit cr
复制代码

柱状图

  1. #delimit ;
  2. graph bar (mean) wage,
  3. over(union) over(married) over(collgrad)
  4. blabel(bar, format(%9.2f)) yscale(off)
  5. title("1988 Mean Hourly Wage of Women Age 40-44")
  6. subtitle("by union status, marital status, and college graduation")
  7. note("Source: Stata 12 NLSW 1988 extract", span);
  8. #delimit cr
复制代码

水平条形图:

  1. #delimit ;
  2. graph hbar wage, over(ind, sort(1))
  3. over(collgrad)
  4. title("1988 Mean Hourly Wage of Women
  5. Age 40-44", span size(med))
  6. note("Source: Stata 12 NLSW 1988
  7. extract", span)
  8. nofill ytitle("") ysize(8);
  9. #delimit cr
复制代码

点图:

  1. delimit ;
  2. graph dot wage, over(ind, sort(1))
  3. over(collgrad)
  4. title("1988 Mean Hourly Wage of Women
  5. Age 40-44", span size(med))
  6. note("Source: Stata 12 NLSW 1988
  7. extract", span)
  8. nofill ytitle("") ysize(8);
  9. #delimit cr
复制代码

双变量点图:

  1. #delimit ;
  2. graph dot (p25) wage (p75) wage,
  3. over(ind, sort(2)) over(collgrad)
  4. title("Upper and Lower Quartile of
  5. Hourly Wage", span)
  6. subtitle("Women Age 40-44, by College
  7. Graduation Status, 1988", span)
  8. note("Source: Stata 12 NLSW 1988
  9. extract", span)
  10. nofill ytitle("") ysize(8) xsize(6)
  11. legend(off);
  12. #delimit cr
复制代码


    熟悉论坛请点击新手指南
下载说明
1、论坛支持迅雷和网际快车等p2p多线程软件下载,请在上面选择下载通道单击右健下载即可。
2、论坛会定期自动批量更新下载地址,所以请不要浪费时间盗链论坛资源,盗链地址会很快失效。
3、本站为非盈利性质的学术交流网站,鼓励和保护原创作品,拒绝未经版权人许可的上传行为。本站如接到版权人发出的合格侵权通知,将积极的采取必要措施;同时,本站也将在技术手段和能力范围内,履行版权保护的注意义务。
(如有侵权,欢迎举报)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

GMT+8, 2025-12-31 00:23