# Quick Start

## Plotting directly from regression

We use the Iris dataset from RDatasets.jl to demonstrate the basic usage of Coefplots.jl

The quickest way to plot a coefplot is to invoke `plot()`

.

```
using Coefplots
using RDatasets
using GLM
df = dataset("datasets", "iris");
regression_result = lm(@formula(SepalLength ~ SepalWidth + PetalLength + PetalWidth), df)
p = plot(regression_result)
```

```
┌ Error: PGFPlotsX.MissingExternalProgramError("No LaTeX installation found, figures will not be generated. Make sure either pdflatex, xelatex or lualatex are installed and that the PATH variable is correctly set.")
└ @ Main string:8
```

You can also customize your coefplot by passing named arguments. For example,

```
p = plot(regression_result; keepcoef = ["SepalWidth", "PetalLength", "PetalWidth"], # drop intercept
title = Label(content="My OLS regression"), # add title
xlabel = Label(content="Coefficients"), # add xlabel
ylabel = Label(content="Regressor Names"), # add ylabel
width = 250, # set width of the axis
height = 180, # set height
keepconnect = true, # connect consecutive coefficients
level = 0.9, # confidence level, the default is 0.95.
vertical = false, # default is true
mark = Mark(mark=:"triangle*", marksize=4, linewidth=0)) # aesthetics
```

```
┌ Error: PGFPlotsX.MissingExternalProgramError("No LaTeX installation found, figures will not be generated. Make sure either pdflatex, xelatex or lualatex are installed and that the PATH variable is correctly set.")
└ @ Main string:8
```

Apart from directly calling `plot()`

, one can also invoke `parse()`

to convert regression object to a Coefplot object. This allows users to deal with the plot with more flexibility, especially on combining plots.

```
using FixedEffectModels
regression_withFE = reg(df, @formula(SepalLength ~ SepalWidth + PetalLength + PetalWidth + fe(Species)));
coefplots_withfe = parse(regression_withFE; title=Label(content="OLS"))
coefplots_pool = parse(regression_result; keepcoef = ["SepalWidth", "PetalLength", "PetalWidth"], title=Label(content="with species FE"))
m = MultiCoefplot(coefplots_withfe, coefplots_pool; title = Label(content="My combined Coefplots"),
xlabel = Label(content="Regressor Names"),
ylabel = Label(content="Coefficients"),
note = Note(content="This is my note."))
p = plot(m)
```

```
┌ Error: PGFPlotsX.MissingExternalProgramError("No LaTeX installation found, figures will not be generated. Make sure either pdflatex, xelatex or lualatex are installed and that the PATH variable is correctly set.")
└ @ Main string:8
```

## Plotting from DataFrame

In order for Coefplots.jl to learn what to plot from a DataFrame, the DataFrame needs to contain the following columns: `[:varname, :b, :se, :dof]`

(`:dof`

is constant across rows while others should vary).

```
using DataFrames
df = DataFrame(varname = ["x1", "x2", "x3"],
b = [1, 2, 3],
se = [0.1, 0.2, 0.3],
dof = 10)
c = Coefplot(df)
p = plot(c)
```

```
┌ Error: PGFPlotsX.MissingExternalProgramError("No LaTeX installation found, figures will not be generated. Make sure either pdflatex, xelatex or lualatex are installed and that the PATH variable is correctly set.")
└ @ Main string:8
```