sysuse auto, clear
reg mpg c.weight##i.foreign
qui sum weight
local minsd = r(mean) - r(sd)
local mean = r(mean)
local plusd = r(mean) + r(sd)
margins foreign, at(weight = (`minsd' `mean' `plusd'))
marginsplot, recast(line) noci scheme(lean1) ///
name(first, replace)
gr export first.png, as(png) replace
// Impossible to tell the difference between
// domestic and foreign lines because of the lean scheme
marginsplot, recast(line) noci ///
plot1opts(lpattern(dash)) ///
scheme(lean1) ///
name(second, replace)
gr export second.png, as(png) replace
// That fixes the problem
marginsplot, recast(line) recastci(rarea) ciopts(color(gs10)) ///
plot1opts(lpattern(dash)) ///
scheme(lean1) ///
name(third, replace)
gr export third.png, as(png) replace
// That's a nice way of plotting CI's
marginsplot, recast(line) recastci(rarea) ciopts(color(gs10)) ///
plot1opts(lpattern(dash)) ///
ytitle("Predicted mileage") ///
title("Car type moderates the weight{char 0150}mileage association") ///
xlabel(`minsd' "-1 SD" `mean' "Average weight (lbs.)" `plusd' "+1 SD") ///
xtitle("") ///
scheme(lean1) ///
name(fourth, replace)
gr export fourth.png, as(png) replace
// That labels the graph nicely