楼主: zdlspace
21974 23

[程序分享] Stata分组绘图加箭头与文字:twoway与bytwoway [推广有奖]

  • 1关注
  • 83粉丝

已卖:1037份资源

学科带头人

93%

还不是VIP/贵宾

-

威望
2
论坛币
5234 个
通用积分
8133.7812
学术水平
520 点
热心指数
536 点
信用等级
509 点
经验
52340 点
帖子
1681
精华
0
在线时间
2717 小时
注册时间
2013-7-21
最后登录
2025-11-22

楼主
zdlspace 学生认证  发表于 2021-1-6 14:18:28 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
最近看了一个帖子,求助分组绘图,一时兴起,画了几张图,供大家参考:数据举例:
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input double(d grade health)
  4. 1  8  2.49
  5. 1  9 2.485
  6. 1 10   2.4
  7. 1 11   2.3
  8. 1 12   2.1
  9. 1 13   1.9
  10. 1 14   1.8
  11. 1 15   1.7
  12. 1 16   1.6
  13. 2  8   2.7
  14. 2  9  2.75
  15. 2 10   2.6
  16. 2 11   2.5
  17. 2 12  2.25
  18. 2 13   2.1
  19. 2 14  2.05
  20. 2 15  1.98
  21. 2 16   1.8
  22. 3  8  3.05
  23. 3  9   2.9
  24. 3 10   2.8
  25. 3 11   2.7
  26. 3 12  2.35
  27. 3 13   2.3
  28. 3 14  2.25
  29. 3 15  2.23
  30. 3 16     2
  31. 4  8  3.27
  32. 4  9   3.1
  33. 4 10  3.05
  34. 4 11   2.9
  35. 4 12   2.6
  36. 4 13  2.48
  37. 4 14  2.38
  38. 4 15  2.45
  39. 4 16   2.2
  40. 5  8  3.25
  41. 5  9  3.18
  42. 5 10  3.05
  43. 5 11     3
  44. 5 12   2.8
  45. 5 13   2.7
  46. 5 14  2.72
  47. 5 15  2.68
  48. 5 16  2.65
  49. end
复制代码


1、twoway命令
  1. **加箭头**
  2. twoway connected health grade if d==1 || connected health grade if d==2  ///
  3.                 || connected health grade if d==3 || connected health grade if d==4  ///
  4.                 || connected health grade if d==5  ///
  5.                 || pcarrowi 1.8 12 1.98 12.5 (5)     ///
  6.                     2.2 11 2.3 11.7 (5)     ///
  7.                     2.3 10 2.62 11.14   (5)     ///
  8.                                         2.9 12.8 2.66 11.9 (5)   ///
  9.                     3 11.8 2.91 11.55 (5)        ///
  10.                                         ,   ///
  11.                    text(1.78 11.7 "25-34" 2.2 10.7 "35-44" 2.3 9.7 "45-54" 2.93 13.09 "55-64" 3.03 12 "65+")  ///
  12.                    xtitle("Years of Education") ytitle("Health Status(1=Excellent,5=Poor)") ///
  13.                    xlabel(8 "8 or fewer" 10 12 14 16 "16+") ///
  14.                    legend(off) scheme(s1mono)
复制代码


最终效果如下:
1609907303040.jpg
  1. **加图例**
  2. twoway connected health grade if d==1 || connected health grade if d==2  ///
  3.                 || connected health grade if d==3 || connected health grade if d==4  ///
  4.                 || connected health grade if d==5,  ///
  5.                    xtitle("Years of Education") ytitle("Health Status(1=Excellent,5=Poor)") ///
  6.                    xlabel(8 "8 or fewer" 10 12 14 16 "16+") ///
  7.                    legend(order(1 "25-34" 2 "35-44" 3 "45-54" 4 "55-64" 5 "65+") row(1)) scheme(s1mono)
复制代码

最终效果如下:
1609907791626.jpg
2、使用bytwoway命令
  1. bytwoway (scatter health grade,connect(l)),by(d) aes(color msymbol lpattern)   ///
  2.            xtitle("Years of Education") ytitle("Health Status(1=Excellent,5=Poor)") ///
  3.            xlabel(8 "8 or fewer" 10 12 14 16 "16+") ///
  4.            legend(off)
  5. addplot: pcarrowi 1.8 12 1.98 12.5 (5)     ///
  6.                     2.2 11 2.3 11.7 (5)     ///
  7.                     2.3 10 2.62 11.14   (5)     ///
  8.                     2.9 12.8 2.66 11.9 (5)   ///
  9.                     3 11.8 2.91 11.55 (5)        ///
  10.                                         ,   ///
  11.             text(1.78 11.7 "25-34" 2.2 10.7 "35-44" 2.3 9.7 "45-54" 2.93 13.09 "55-64" 3.03 12 "65+")  
复制代码

最终效果如下:
1609913369338.jpg

上面几种分组绘图方案,你更喜欢哪一个呢?

二维码

扫码加我 拉你入群

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

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

关键词:stata分组 twoway Stata tata wow

已有 3 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
Sunknownay + 3 + 3 + 3 鼓励积极发帖讨论
chentibiao + 5 + 5 + 5 精彩帖子
dxystata + 100 + 10 鼓励积极发帖讨论

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

Raymond
Stata 17.0, MP(4)

沙发
zdlspace 学生认证  发表于 2021-1-6 15:47:00
我们在分组回归、异质性检验之前,都可以画这样一张图来说服读者,还是很有用的画图命令哦
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
3114622639 + 16 + 8 + 8 + 4 精彩帖子

总评分: 论坛币 + 16  学术水平 + 8  热心指数 + 8  信用等级 + 4   查看全部评分

藤椅
黃河泉 在职认证  发表于 2021-1-6 15:59:54
zdlspace 发表于 2021-1-6 15:47
我们在分组回归、异质性检验之前,都可以画这样一张图来说服读者,还是很有用的画图命令哦
有趣,bytwoway 不知哪里有 (可下载)?

板凳
zdlspace 学生认证  发表于 2021-1-6 17:22:00
黃河泉 发表于 2021-1-6 15:59
有趣,bytwoway 不知哪里有 (可下载)?
github可下载,您可以试试下面的命令,但经常下载不成功,我这里提供给您一个ado文件吧,我这里没有help文件,如有需要可以github上找,上面有关于这条命令的很多示例。
  1. net install bytwoway, from("https://raw.githubusercontent.com/matthieugomez/bytwoway.ado/master/")
复制代码

bytwoway.ado.zip (2.37 KB) 本附件包括:
  • bytwoway.ado

Raymond
Stata 17.0, MP(4)

报纸
zdlspace 学生认证  发表于 2021-1-8 15:41:22
自己顶一下

地板
fgkjvbk 学生认证  发表于 2021-4-12 14:38:05
楼主您好,我用了您的命令不能下载bytwoway这个命令,请问有其他方法吗?能否请您详细说一下,谢谢

7
zdlspace 学生认证  发表于 2021-4-12 16:13:45
fgkjvbk 发表于 2021-4-12 14:38
楼主您好,我用了您的命令不能下载bytwoway这个命令,请问有其他方法吗?能否请您详细说一下,谢谢
楼上我给了ado文件,下载解压到plus文件夹即可。

8
fgkjvbk 学生认证  发表于 2021-4-13 10:17:54
已经放了plus文件,之后要输入什么命令吗?我还是不太懂

9
zdlspace 学生认证  发表于 2021-4-13 10:41:24
fgkjvbk 发表于 2021-4-13 10:17
已经放了plus文件,之后要输入什么命令吗?我还是不太懂
之后就可以根据我上面的代码画图啦

10
fgkjvbk 学生认证  发表于 2021-4-13 14:41:11
已解决,感谢回复

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-6 19:58