Dates correspond (roughly) to SSC Archive releases.

17dec2020 (1.8.4) - automatic offsets are no longer added to the plot positions of the estimates if multiple series are plotted but the coefficients of the series are distinct (such that there is at most one estimate per coefficient) - an "invalid attempt to modify label" error was returned when applying option -generate()- without -replace- in a situation in which value label definitions from an earlier call to -coefplot, generate()- were still in memory, even though the corresponding variables have been dropped; -coefplot- is now less strict; it now assumes that it is ok to overwrite existing value labels if a variable with the same name could successfully be created - play(), xoverhangs, and yoverhangs did not work in case of multiple plots; this is fixed 22feb2019 (1.8.2) - cirecast() can now be used as shorthand notation for ciopts(recast()) - citype() can now has additional methods: probit, atanh, and log - offset() can now contain expressions, e.g. offset(1/7) - model options from p#() were only applied in the first relevant subgraph and were omitted in subsequent subgraphs; this is fixed - computation of CIs failed if degrees of freedom were larger than 2e17 (can happen with -mi estimate-); this is fixed 18sep2017 (1.8.1) - mlabel() now supports string expressions to generate complicated marker labels - the backslash is no longer required between models when merging multiple models into one series (as long as the same options are to be used for all models); that is, you can now type "(m1 m2 m3, opts)" instead of "(m1 \ m2 \ m3, opts)" - noeqlabels did not remove the gap between equations; this is fixed; if you want to keep the gap, type noeqlabels together with eqlabels(, gap(1)) - eform(), rescale() and transform() returned error if no match was found in a model that had only one coefficient; this is fixed 14feb2017 (1.8.0) - options p1(), p2(), etc. are now allowed to specify plot options - wildcard characters (*, ?) can now be used in model names - eform() and rescale() broke computation of t and p values; this is fixed 02feb2017 (1.7.8) - rename() and eqrename() now have a regex suboption 24jan2017 (1.7.7) - new sort() option - new orderby() option - paired-coordinate plots are now supported in ciopts(recast()); in addition to the official types, plot type -pcrarrow- is provided for reverse arrows - cismooth() now has suboptions color() and pstyle() - p-values are now available internal variable @pval; t (or z) statistics as @t - shorthand syntax se(#), ci((# #) ...), aux(# ...), and at(#) is now allowed when plotting results from a matrix - df(.) is now allowed (set the DFs to missing) - twoway option pcycle() is now supported (default is set to 15) - coeflabels() did not support the angle() suboption; this is fixed - eqlabels() now has suboption -labels- to use variable labels - eqrename() now also affects equation names set by asequation() - mlabels() could crash if there were no matches; this is fixed - addplot(, below) now no longer messes up the legend; options nodraw, draw, by(), name(), saving(), play() are no longer allowed within addplot() - changed behavior of rename()/eqrename(): rename(* = str) will now add str as a suffix, not as a prefix; this is useful, e.g., for plotting results from -proportion- or -mean, over()- - coefficients starting with "." caused error when trying to retrieve the labels; this is fixed 29jan2015 (1.7.5) - coefplot accidentally left behind extra observations in the dataset if the existing number of observations was lower than the number of observations required to hold the results plotted by coefplot; this is fixed 08dec2014 (1.7.4) - fysize() and fxsize() did not work in case of multiple plots; this is fixed - there was a small chance that coefplot left behind a mata object if the user pressed break; this is fixed - option -nodrop- added - now uses "equation" as plot label instead of ".=equation" if model is . - twoway plot options such as msymbol() were not correctly passed through to the plots if specified at the subgraph level; this is fixed - collecting plot options across subgraphs has been improved (not relevant if norecycle is specified); the rules are: (1) plot options specified at a lower level take precedence over later plot options specified at an upper level. (2) within level, the rightmost option is used. - coefplot now picks up results from e(b_mi) and e(V_mi) by default if plotting results from -mi estimate- - transform() suboption added to at() - interaction() suboption added to coeflabels() - plot options key() and nokey added - replace option could fail due to conflicts with existing labels; this is fixed 05jun2014 (1.7.1) - grid() now allows suboptions 15may2014 (1.7.0) - internal variables are now accessed as @b, @ll, @ul, ... (syntax \`...' is discontinued) - variances, SEs and DFs now available as internal variables (@V, @se, @df) - mlabels() option added - transform() option added - aux() option added - weight() option added - asequation now allowed without argument - default prefix for generate() is now "__" - CIs are now stored in wide format (i.e. as separate variables) 26feb2014 (1.6.5) - if() option added 29jan2014 (version 1.6.1) - citype(logit|normal) added - ci() now uses syntax ci((ll ul) ...) ci("ll ul" ...) is still supported but undocumented - option swapnames added - options at(_coef) and at(_eq) added 23nov2013 (version 1.5.8) - improved recovery of plot positions from e(at) for margins - syntax at(matrix(...)) now possible - axis() option added - new suboptions in eqlabels(), groups(), headings(): gap(), wrap(), truncate(), nobreak - plotlabels() and bylabels() options added 28aug2013 (version 1.5.4) - cismooth() added; cishade removed - problem with too many ciopts() fixed 26aug2013 (version 1.5.2) - pstyles are now sensitive to plot types 25aug2013 (version 1.5.1) - coefplot released on SSC