help grstyle http://repec.sowi.unibe.ch/stata/grstyle http://github.com/benjann/grstyle/ --------------------------------------------------------------------------------------- Title grstyle -- Customize the overall look of graphs Syntax grstyle init [ newscheme, path(path) replace ] grstyle scheme entry grstyle set subcmd ... grstyle type grstyle clear [, erase] Description grstyle allows you to customize the overall look of graphs from within a do-file without having to fiddle around with external scheme files. The advantage of grstyle over manually editing a scheme file is that everything needed to reproduce your graphs can be included in a single do-file. grstyle init starts recording the custom style settings. Optionally, if newscheme is provided, a new scheme file is created and stored in the current working directory as "scheme-newscheme.scheme". grstyle init uses the active graph scheme as the base scheme for the custom style settings. The default scheme according to factory settings is s2color. Apply set scheme schemename prior to running grstyle init if you want to use a different scheme as the base scheme. After running grstyle init, use grstyle scheme entry to add a custom style setting. Use grstyle scheme entry repeatedly to add multiple settings. The syntax of scheme entry is described in scheme entries. In addition, you can use grstyle set to add sets of custom settings. grstyle set provides a number of precoded collections of scheme entries. Furthermore, it provides tools to automize the generation of certain types of scheme entries (e.g. colors or sizes). grstyle type views the custom settings (i.e., types the contents of the custom scheme file). grstyle clear deactivates the custom style settings. grstyle clear is only needed if you want to restore the original graph settings within the same Stata session; changes made by grstyle are only temporary and restarting Stata will remove the custom settings even if grstyle clear has not been specified. Furthermore, grstyle init automatically runs grstyle clear before initializing new settings. Some features of grstyle require the palettes package (providing commands colorpalette, colorpalette9, symbolpalette, and linepalette) to be installed on the system; type ssc install palettes to install the package. In Stata 14.2 or newer, you will also need to install the colrspace package; type ssc install colrspace. Options for grstyle init path(path) specifies a path (absolute or relative) for the scheme file cerated by grstyle init newscheme. Option path() is only allowed if newscheme is specified. The default is to store the scheme file in the current working directory. Note that the graphs using the scheme will only display correctly if the scheme file is stored in a location where it is found by Stata (see adopath). replace allows overwriting an existing file. replace is only allowed if newscheme is specified. Options for grstyle clear erase causes the scheme file created by grstyle to be erased from disk. The default is not to erase the scheme file. Examples Stata's default graph size is 5.5 by 4 inches. If you want all your graphs to be, say, 5 by 5 inches, you could change these defaults using grstyle as follows instead of adding options ysize(5) and xsize(5) to each graph command: . grstyle init . grstyle graphsize x 5 . grstyle graphsize y 5 . sysuse auto . scatter price weight . scatter price mpg . grstyle clear Here are a number of other useful style settings, starting from the s2color scheme: . set scheme s2color . grstyle init - get rid of background shading . grstyle color background white - use horizontal labels on vertical axis . grstyle anglestyle vertical_tick horizontal - add some space between tick labels and axis titles . grstyle gsize axis_title_gap tiny - also draw grid lines on horizontal axis . grstyle yesno draw_major_hgrid yes - always include minimum and maximum grid lines . grstyle yesno grid_draw_min yes . grstyle yesno grid_draw_max yes - change color, width, and pattern of grid lines . grstyle color major_grid gs8 . grstyle linewidth major_grid thin . grstyle linepattern major_grid dot - place legend on the right and remove the frame . grstyle clockdir legend_position 4 . grstyle numstyle legend_cols 1 . grstyle linestyle legend none - thicker lines in line plots . grstyle linewidth plineplot medthick - transparent markers (for p1 and p2) (not supported in Stata 14 or below) . grstyle color p1markline navy%0 . grstyle color p1markfill navy%50 . grstyle color p2markline maroon%0 . grstyle color p2markfill maroon%50 - transparent confidence intervals (not supported in Stata 14 or below) . grstyle color ci_area gs12%50 . grstyle color ci_arealine gs12%0 - now draw some graphs: . sysuse auto . two (scatter price weight if foreign==0) (scatter price weight if foreign==1) (lfitci price weight if foreign==0, clstyle(p1line)) (lfitci price weight if foreign==1, clstyle(p2line)), legend(order(1 "domestic" 2 "foreign")) . two (scatter price mpg if foreign==0) (scatter price mpg if foreign==1) (lfitci price mpg if foreign==0, clstyle(p1line)) (lfitci price mpg if foreign==1, clstyle(p2line)), legend(order(1 "domestic" 2 "foreign")) - revert back to s2color style . grstyle clear Most of the above can also be achieved with less typing using grstyle set. Technical remarks Unless newscheme is provided, grstyle init creates a scheme called _GRSTYLE_ and stores it in file "scheme-_GRSTYLE_.scheme" in the PERSONAL ado-file directory (see help sysdir). That is, unless a custom scheme name is specified, grstyle will always use the same file to store the style settings. Be aware of this limitation if you use grstyle in parallel Stata sessions. grstyle maintains global macro GRSTYLE_FN containing the path and name of the scheme file used to store the custom style settings, global macro GRSTYLE_SN containing the corresponding scheme name, and global macro GRSTYLE_SN0 containing the name of the scheme that was active when initializing grstyle. Furthermore, depending on context, global macro GRSTYLE_RSIZE containing information on the reference size for size calculation will be set. grstyle clear removes these global macros. Author Ben Jann, University of Bern, ben.jann@soz.unibe.ch Thanks for citing this software as Jann, B. (2018a). Customizing Stata graphs made easy (part 1). The Stata Journal 18(3): 491-502. Jann, B. (2018b). Customizing Stata graphs made easy (part 2). The Stata Journal 18(4): 786–802. or Jann, B. (2017). grstyle: Stata module to customize the overall look of graphs. Available from http://ideas.repec.org/c/boc/bocode/s458414.html. Also see Online: help for grstyle set, graph, schemes, scheme files, scheme entries