program define fitline version 2.1 capture drop h_9 mac def _varlist "req ex " mac def _if "optional" mac def _options "*" parse "%_*" parse "%_varlist", parse(" ") di " " di "Enter an X-axis label (<20 characters)," di " OR press to use " in red " %_2 " in white " as the label." di "X-label..." _r(xn) di " " if "%xn"=="" {mac def xn "%_2"} mac def xnm "b2("%xn")" di " " di "Enter a Y-axis label (<20 characters)," di " OR press to use " in red " %_1 " in white " as the label." di "Y-label..." _r(yn) di " " if "%yn"=="" {mac def yn "%_1"} macro define ynm "l1(" ") l2("%yn")" quietly{ regress %_1 %_2 %_if predict h_9 } macro define a=_coef[_cons] macro define a = substr(string(%a),1,6) macro define b=_coef[%_2] macro define b = substr(string(%b),1,6) macro define c =_result(8) macro define c = substr(string(%c),1,4) macro define d "t1("%yn = %a + %b %xn") b1("Linear Regression")" macro define p=fprob(_result(3),_result(5),_result(6)) if %p<.001 { mac def p = .0001 } macro define p = substr(string(%p),1,4) macro define e "t2("Adjusted R-square= %c <[][]> p= %p")" gr %_1 h_9 %_2 %_if, s(oi) sort c(.l) xlab ylab %e %d %xnm %ynm %_options if "%_options"=="" { display " " display " To print graph, run fitline specifying a filename:" display " fitline %_1 %_2, saving(jt1)"} drop h_9 end