楼主: niuniuyiwan
5059 3

[Stata] Stata基础操作: 绘图概述(4) [推广有奖]

  • 7关注
  • 91粉丝

VIP

已卖:1980份资源

学科带头人

91%

还不是VIP/贵宾

-

威望
0
论坛币
14446 个
通用积分
1962.3850
学术水平
1119 点
热心指数
1167 点
信用等级
1061 点
经验
8523 点
帖子
1629
精华
1
在线时间
2492 小时
注册时间
2010-10-10
最后登录
2025-12-19

楼主
niuniuyiwan 在职认证  发表于 2015-7-11 22:57:13 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

Stata 绘图概述(4)柱状图 条形图

      在实际绘图中,柱状图(histogram)和条形图(bar chart)看起来很像,但两者其实不同。柱状图通常用来呈现变量的分布及整体趋势,而条形图经常用来比较变量大小。柱状图将数据按照一定的区间分组,而条形图将数据分类。
      

柱状图

条形图

1

呈现变量分布

比较变量

2

横轴是量化数据

横轴是类别

3

不同柱一般不能重新排序

不同条可以任意重新排序

资料来源:http://blog.sina.com.cn/s/blog_5f234d4701019xvd.html      
  1. sysuse sp500, clear
  2. #delimit ;

  3. histogram volume, freq
  4.   xaxis(1 2)
  5.   ylabel(0(10)60, grid)
  6.   xlabel(12321 "mean"
  7.         9735 "-1 s.d."
  8.        14907 "+1 s.d."
  9.         7149 "-2 s.d."
  10.        17493 "+2 s.d."
  11.        20078 "+3 s.d."
  12.        22664 "+4 s.d.", axis(2) grid gmax)
  13.   xtitle("", axis(2))
  14.   subtitle("S&P 500, January 2001 - December 2001")
  15.   note("Source:  Yahoo!Finance and Commodity Systems, Inc.")
  16.   ;
  17. #delimit cr
复制代码
  1. sysuse sp500, clear
  2. #delimit ;

  3. histogram volume, freq normal
  4. xaxis(1 2)
  5. ylabel(0(10)60, grid)
  6. xlabel(12321 "mean"
  7.       9735 "-1 s.d."
  8.      14907 "+1 s.d."
  9.       7149 "-2 s.d."
  10.      17493 "+2 s.d."
  11.      20078 "+3 s.d."
  12.      22664 "+4 s.d."
  13. , axis(2) grid gmax)
  14. xtitle("", axis(2))
  15. subtitle("S&P 500, January 2001 - December 2001")
  16. note("Source:  Yahoo!Finance and Commodity Systems, Inc.")
  17. ;
  18. #delimit cr
复制代码

1.png

<--------grid代表网格









2.png

<--------添加normal代表正态曲线

自定义直方图宽度的一种方法:
  1. sysuse auto, clear
  2. su mpg
  3. local width=1
  4. histogram mpg ,width(`width') freq ///
  5. addplot(function y =`width'*`=_N'*normalden(x,`r(mean)',`r(sd)'), ra(10 45))


  6. sysuse auto, clear
  7. su mpg
  8. local width=2   //   <-----------根据需要改变
  9. histogram mpg ,width(`width') freq ///
  10. addplot(function y =`width'*`=_N'*normalden(x,`r(mean)',`r(sd)'), ra(10 45))


  11. sysuse auto, clear
  12. su mpg
  13. local width=3   //   <-----------根据需要改变
  14. histogram mpg ,width(`width') freq ///
  15. addplot(function y =`width'*`=_N'*normalden(x,`r(mean)',`r(sd)'), ra(10 45))

  16. sysuse auto, clear
  17. su mpg
  18. local width=4   //   <-----------根据需要改变
  19. histogram mpg ,width(`width') freq ///
  20. addplot(function y =`width'*`=_N'*normalden(x,`r(mean)',`r(sd)'), ra(10 45))
复制代码
w1.png
w2.png
w3.png
w4.png
  1. //Combining many graphs on a page
  2. sysuse auto, clear
  3. graph drop _all
  4. drop make
  5. foreach i of varlist _all{
  6.          capture confirm numeric variable `i' if _rc==0
  7.          histogram `i', name(`i')
  8.          local z "`z' `i'"
  9.          graph combine `z'
  10. }
复制代码
多变量直方图的绘制,可使用循环语句,合并到同一幅图中。
loop.png

条形图

     1. 对于同一数据条形图的绘制,由于hbar支持的标签长度更长,因此使用graph hbar要比graph bar 好些。
     2. 使用graph bar|hbar|box|hbox|dot 描述类别变量时,选项为over( ) ,不是by( )     
  1. sysuse citytemp, clear
  2. #delimit ;
  3. graph bar tempjuly tempjan, over(region) bargap(-30)
  4. legend( label(1 "July") label(2 "January") )
  5. ytitle("Degrees Fahrenheit")
  6. title("Average July and January temperatures")
  7. subtitle("by regions of the United States")
  8. note("Source:  U.S. Census Bureau, U.S. Dept. of Commerce") ;
  9. #delimit cr
复制代码
b1.png
  1. sysuse citytemp, clear
  2. #delimit ;
  3. graph bar tempjuly tempjan, over(region) bargap(-30)
  4.         legend( label(1 "July") label(2 "January") )
  5.         ytitle("Degrees Fahrenheit")
  6.         title("Average July and January temperatures")
  7.         subtitle("by regions of the United States")
  8.         note("Source:  U.S. Census Bureau, U.S. Dept. of Commerce")
  9.         blabel(bar, position(inside) format(%9.1f) color(white)) ;
  10. #delimit cr
复制代码
b2.png
  1. sysuse citytemp, clear
  2. #delimit ;
  3. graph bar (mean) tempjuly tempjan,
  4.         over(division, label(labsize(*.75)))
  5.         over(region)
  6.         bargap(-30) nofill
  7.         ytitle("Degrees Fahrenheit")
  8.         legend( label(1 "July") label(2 "January") )
  9.         title("Average July and January temperatures")
  10.         subtitle("by region and division of the United States")
  11.         note("Source:  U.S. Census Bureau, U.S. Dept. of Commerce") ;
  12. #delimit cr
复制代码
b3.png
  1. sysuse citytemp, clear
  2. #delimit ;
  3. graph hbar tempjan, over(division) over(region) nofill
  4.         ytitle("Degrees Fahrenheit")
  5.         title("Average January temperature")
  6.         subtitle("by region and division of the United States")
  7.         note("Source:  U.S. Census Bureau, U.S. Dept. of Commerce") ;
  8. #delimit cr
复制代码
b4.png
  1. sysuse nlsw88, clear
  2. #delimit ;
  3. graph bar wage, over(smsa, descend gap(-30)) over(married)
  4.         over(collgrad, relabel(1 "Not college graduate" 2 "College graduate"))
  5.         ytitle("")
  6.         title("Average Hourly Wage, 1988, Women Aged 34-46")
  7.         subtitle("by College Graduation, Marital Status, and SMSA residence")
  8.         note("Source: 1988 data from NLS, U.S. Dept. of Labor, Bureau of Labor Statistics") ;
  9. #delimit cr
复制代码
b5.png
  1. sysuse educ99gdp, clear
  2. generate total = private + public
  3. #delimit ;
  4. graph hbar (asis) public private,
  5.         over(country, sort(total) descending) stack
  6.         title("Spending on tertiary education as % of GDP, 1999",
  7.         span pos(11))
  8.         subtitle(" ")
  9.         note("Source: OECD, Education at a Glance 2002", span) ;
  10. #delimit cr
复制代码

b6.png


混搭不同颜色区别变量

55.png

  1. clear
  2.                 input ///
  3.                     id w software mark
  4.                         1  1   1  129
  5.                         2  1   2  103
  6.                         3  1   3  171
  7.                         4  1   4  98
  8.                         5  1   5  110
  9.                         6  1   6  13
  10.                         7  1   7  4
  11.                         8  1   8  7
  12.                         9  1   9  49
  13.                         10 1   10 60
  14.                 end

  15.                 label define kk ///
  16.                 1  "Stata "    ///
  17.                 2  "MATLAB®"  ///
  18.                 3  "SPSS"     ///
  19.                 4  "R"       ///
  20.                 5  "EViews"  ///
  21.                 6  "Hadoop"  ///
  22.                 7  "WinBUGs"  ///
  23.                 8  "Gauss "   ///
  24.                 9  "Python"  ///
  25.                 10 "SAS"
  26.                 label value software kk

  27.                 label define w 1 "计量经济学与统计软件使用大调查"
  28.                 label value w w

  29.                 graph bar (asis) mark,  over(id) over(software,label(angle(45))) over(w) ///
  30.                     ylabel( 0(20)190, angle(45))        ///
  31.                     blabel(bar, position(12) format(%9.0f) color(black)) ///
  32.                     scheme(s2color)  legend(off)      ///
  33.                     bargap(5) title({bf:万万个论坛币大放送之二} ) subtitle("经管代码库")    ///
  34.                     nofill ytitle("投票数") ///
  35.                     bar(1, color(gold))      ///
  36.                     bar(6, color(gold))      ///
  37.                     bar(2, color(gs13))      ///
  38.                     bar(7, color(gs13))      ///
  39.                     bar(3, color(sienna))    ///
  40.                     bar(8, color(sienna))    ///
  41.                     bar(4, color(cyan))      ///
  42.                     bar(9, color(cyan))      ///
  43.                     bar(5, color(pink))      ///
  44.                     bar(10, color(pink))
复制代码
二维码

扫码加我 拉你入群

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

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

关键词:Stata基础 Stata 基础操作 tata histogram volume 柱状图 资料

已有 1 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
xddlovejiao1314 + 100 + 100 + 5 + 5 + 5 精彩帖子

总评分: 经验 + 100  论坛币 + 100  学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

本帖被以下文库推荐

沙发
xddlovejiao1314 学生认证  发表于 2015-7-12 10:24:36
谢谢分享。好贴~
已有 1 人评分论坛币 收起 理由
niuniuyiwan + 5 精彩帖子

总评分: 论坛币 + 5   查看全部评分

藤椅
wfh仰望星空 发表于 2015-7-15 13:09:44
我来围观!
已有 1 人评分论坛币 收起 理由
niuniuyiwan + 5 精彩帖子

总评分: 论坛币 + 5   查看全部评分

板凳
Alfred_G 学生认证  发表于 2015-9-1 19:17:39
好贴~之前看到“help graph”中也有介绍,学习之
已有 1 人评分论坛币 收起 理由
niuniuyiwan + 5 精彩帖子

总评分: 论坛币 + 5   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-30 21:13