21632 30

[作图问题求助] stata画调节效应图时,marginsplot命令怎么修改两条线的虚实和颜色 [推广有奖]

  • 16关注
  • 7粉丝

讲师

19%

还不是VIP/贵宾

-

威望
0
论坛币
2482 个
通用积分
158.7595
学术水平
13 点
热心指数
20 点
信用等级
13 点
经验
23879 点
帖子
252
精华
0
在线时间
558 小时
注册时间
2017-6-14
最后登录
2024-1-17

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我的code如下
  1. clear
  2. sysuse auto,clear
  3. regress price c.length##c.mpg   //调节效应回归
  4. est sto regression   //保存结果
  5. //分别求自变量与调节变量加减一个标准差的值
  6. foreach v of var length mpg {
  7.   su `v' if e(sample)
  8.   local low_`v'=r(mean)-r(sd)
  9.   local high_`v'=r(mean)+r(sd)
  10. }
  11. est restore regression
  12. //调取保存的回归结果
  13. margins,at(mpg=(`low_mpg' `high_mpg') length = (`low_length' `high_length'))  //计算边际效应
  14. *画边际效应图
  15. marginsplot , xlabel(`low_mpg' "Low IV" `high_mpg' "High IV") ///
  16.                           ytitle("Dependent variable") ///
  17.                           ylabel(2000(1000)9000, angle(horizontal) nogrid) ///
  18.                           graphregion(color(white)) plotregion(margin(l+8 r+8)) ///
  19.                           legend(order(1 "LOW" 2 "HIGH") size(small) col(1) position(11) ring(0) region(fcolor(none) lpattern(blank))) ///
  20.                           title("") noci
复制代码
做出来的图如下:
WWSE3XM_X](8VMW4$WZ4[IE.png

我的问题是,现在我想①把两条线条的颜色全部改为黑色,②然后一条为实线 另一条为虚线,③把线条的两端一个为圆形,另一个改为正方形(或者别的形状,反正就是要把两条线区分开),并且颜色都是黑色
请问我该如何改写我的code呢??

二维码

扫码加我 拉你入群

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

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


回帖推荐

黃河泉 发表于4楼  查看完整内容

请据以更改:

汇通天下 发表于6楼  查看完整内容

你好,可以在marginsplot的option下加入plot1opt(lcolor(black) lp(solid) msymbol(Oh) mc(black)) /// plot2opt(lcolor(black) lp(dash) msymbol(D) mc(black)) /// 详情可参照help marginsplot 的plot#opt.
我试试了半天也没试出来, 难道只能手动 edit 吗?

使用道具

大佬们,这个能调吗?

使用道具

板凳
黃河泉 在职认证  发表于 2019-8-25 17:42:33 |只看作者 |坛友微信交流群
经济学小小白 发表于 2019-8-25 10:04
大佬们,这个能调吗?
请据以更改:
  1. sysuse auto, clear
  2. regress price c.length##c.mpg
  3. est store regression   

  4. foreach v of var length mpg {
  5.   sum `v' if e(sample)
  6.   local low_`v' = r(mean)-r(sd)
  7.   local high_`v' = r(mean)+r(sd)
  8. }

  9. margins, at(mpg=(`low_mpg' `high_mpg') length=(`low_length' `high_length'))
  10. marginsplot, xlabel(13 " " `low_mpg' "Low IV" `high_mpg' "High IV" 30 " ") ///
  11.    ytitle("Price") ylabel(2000(1000)9000, angle(0) nogrid) ///
  12.    legend(position(3) col(1) stack) title("") noci ///
  13.    plot1opts(m(Oh) lp(dash)) plot2opts(m(square) lp(dot))
复制代码

使用道具

报纸
黃河泉 在职认证  发表于 2019-8-25 17:43:20 |只看作者 |坛友微信交流群
经济学小小白 发表于 2019-8-25 10:04
大佬们,这个能调吗?
M2.png

使用道具

地板
汇通天下 发表于 2019-8-26 01:36:11 来自手机 |只看作者 |坛友微信交流群
经济学小小白 发表于 2019-8-24 21:27
我的code如下做出来的图如下:


你好,可以在marginsplot的option下加入plot1opt(lcolor(black) lp(solid) msymbol(Oh) mc(black)) ///<br>
plot2opt(lcolor(black) lp(dash) msymbol(D)  mc(black)) ///<br>
详情可参照help marginsplot 的plot#opt.
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
黃河泉 + 3 + 3 + 3 观点有启发

总评分: 学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

使用道具

7
林小昂otz 发表于 2020-1-28 23:42:55 |只看作者 |坛友微信交流群
黃河泉 发表于 2019-8-25 17:43
黄老师新年好!想请问,在
  • regress price c.length##c.mpg
的命令中,意思是需要把所有的变量都加进去呢,还是只需要像示例一样,放因变量和交互项呢?这个##代表是相乘吧?我还以为在stata里面相乘是*就可以了

调整了坐标轴,画出来的直线是平行的,是画错了吗?
Graph2.gif

使用道具

8
林小昂otz 发表于 2020-1-29 14:59:13 |只看作者 |坛友微信交流群
黃河泉 发表于 2019-8-25 17:43
黄老师新年好!  想请问  regress price c.length##c.mpg   //调节效应回归  
这一步是需要把所有变量,包括控制的行业也放进去吗? 例子的意思是只回归交互项?

为什么我做出来两条线是平行的呢? 是不是哪里做错了?

使用道具

9
林小昂otz 发表于 2020-1-29 14:59:16 |只看作者 |坛友微信交流群
黃河泉 发表于 2019-8-25 17:43
黄老师新年好!  想请问  regress price c.length##c.mpg   //调节效应回归  
这一步是需要把所有变量,包括控制的行业也放进去吗? 例子的意思是只回归交互项?

为什么我做出来两条线是平行的呢? 是不是哪里做错了?

使用道具

10
黃河泉 在职认证  发表于 2020-1-29 16:24:45 |只看作者 |坛友微信交流群
林小昂otz 发表于 2020-1-29 14:59
黄老师新年好!  想请问  regress price c.length##c.mpg   //调节效应回归  
这一步是需要把所有变量, ...
请根据你自己的回归!

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 14:26