绘制上图的Stata代码如下:
*Figure: Line plots witthed line with confidence interval
* Load data set
use "http://ds.epiman.cn/uploads/2022/06/line-fit-text.dta", clear
* Treament effect
reg y_var x_var post x_var_post control
* Save coefficients for graph
local beta_pre = round(_b[x_var],0.001)
local beta_post = round(_b[x_var] + _b[x_var_post],0.001)
* Save F-test P-values for graph
test _b[x_var_post] = 1
local f_pre = round(r(p),0.001)
if `f_pre' == 0 local f_pre = "0.000"
test _b[x_var_post] + _b[x_var_post] = 1
local f_post = round(r(p),0.001)
* Graph
twoway (lfitci y_hat x_var if post == 1, color("222 235 247") lwidth(.05)) ///
(lfitci y_hat x_var if post == 0, color(gs15)) ///
(lfit x_var x_var if post == 1, color(red) lwidth(.5) lpattern(dash)) ///
(lfit y_hat x_var if post == 0, color(gs8) lwidth(.5)) ///
(lfit y_hat x_var if post == 1, color(edkblue) lwidth(.5)), ///
text(5 9 "Pre-treatment" "Regression coefficent: 0`beta_pre'" "P-value of coefficent = 1: `f_pre'" ///
12 9 "Post-treatment" "Regression coefficent: 0`beta_post'" "P-value of coefficent = 1: 0`f_post'", ///
orient(horizontal) size(vsmall) justification(center) fcolor(white) box margin(small)) ///
xtitle("Independent variable value") ///
ytitle("Predicted value of dependent variable") ///
legend(order (6 "Pre-treatment" 7 "Post-treatment" 3 "Pre-treatment 95%CI" 1 "Pre-treatment 95%CI")) ///
graphregion(color(white)) bgcolor(white)
* Have a lovely day!
* Source: https://worldbank.github.io/stata-visual-library/line-fit-text.html