Course length: | 6 weeks (4 lessons) |

Price: | USD 150 |

Course leaders: | Kerry Kammire, Derek Wagner, and Rose Medeiros |

Prerequisites: | Stata 17 installed and working. |

Lesson 1

**Getting to know your data using graphs**

- Introduction
- Why graphs are an important tool for exploratory data analysis
- Data management tools for graphing data
- The example dataset

- How to create and edit basic graphs using Stata
- How to create and edit graphs with dialog boxes
- How to edit graphs with the Graph Editor
- How to create and edit graphs with commands

- Some basic graphs
- Graphs for one continuous variable
- Graphs for one categorical variable
- Graphs for two continuous variables
- Graphs for two categorical variables
- Graphs for one continuous and one categorical variable
- Graphs for many variables

- Storing, saving, and exporting graphs
- Storing graphs in memory
- Saving graphs to disk
- Exporting graphs in .png format

- Automating the process: Looping and saving

Lesson 2

**Understanding your results using graphs**

- Introduction
- Model checking using graphs
- Using the
**predict**command - Checking model assumptions
- Checking the normality assumption
- Checking the linearity assumption
- Checking the homoskedasticity assumption

- Identifying outliers and influential observations

- Using the
- Visualizing the results of your models
- Using the
**margins**and**marginsplot**commands- A brief review of factor variables
- Categorical independent variables
- Multiple categorical independent variables
- Continuous independent variables
- Continuous and categorical independent variables
- Average response versus response at average: The
**atmeans**option - Contrasts of margins
- Marginal effects: Margins of derivatives of responses

- Using contour plots to visualize continuous-by-continuous interactions

- Using the

Lesson 3

**Formatting graphs for publication**

- Introduction
- Formatting titles, legends, and text boxes
- Formatting titles
- Formatting legends
- Adding text boxes
- Using italics, bold, superscripts, and subscripts
- Using specialty characters
- Using different fonts
- Formatting numbers

- Formatting axes, axis labels, ticks, gridlines, graph, and plot regions
- Formatting categorical axis labels
- Formatting the x and y axes
- Formatting the x- and y-axis labels
- Formatting major and minor ticks and gridlines
- Adding reference lines
- Formatting the graph and plot regions

- Controlling the aspect ratio and size of graphs
- Using schemes to change the overall look of graphs
- Using built-in schemes
- Defining your own schemes

- Recording and saving edits in the Graph Editor

Lesson 4

**Advanced graphs: How to layer and combine multiple graphs**

- Introduction
- Layering multiple graphs with the
**graph twoway**command- Basic layered graphs with one y axis
- Advanced layered graphs with one y axis
- Basic layered graphs with two y axes
- Advanced layered graphs with two y axes

- Layering multiple graphs with the
**addplot()**option- Basic
- Advanced

- Creating multiple graphs with the
**by()**option - Combining different graphs with the
**graph combine**command- Basics: Making a table of separate graphs
- Advanced: Making a single complex graph from separate graphs

- Exporting graphs for publication
- Exporting graphs in pixel-based formats
- Exporting graphs in vector-based formats

Bonus

- Introduction
- User-written graph commands
- The Statistical Software Components (SSC) archive
- The
**coefplot**package by Ben Jann

- How to write a simple graphics wrapper command
- How to create animated graphs
- Some fun graphs
- How to create normal curves with shaded tails
- How to show scatterplots with regression lines and residuals
- How to add normal curves to regression lines
- How to graph a histogram with a box plot

Appendix

**Appendix: Data management tools useful for graphing data**

- The
**destring**and**encode**commands - The
**recode**command - The
**tabulate**command with the**generate()**option - The
**egen**command - The
**contract**and**collapse**commands - The
**statsby**command - The
**snapshot**command - The
**reshape**command - Macros and loops
- Extracting value labels to local macros