arviz.plot_forest

arviz.plot_forest(data, kind='forestplot', model_names=None, var_names=None, combined=False, credible_interval=0.94, rope=None, quartiles=True, ess=False, r_hat=False, colors='cycle', textsize=None, linewidth=None, markersize=None, ridgeplot_alpha=None, ridgeplot_overlap=2, figsize=None)[source]

Forest plot to compare credible intervals from a number of distributions.

Generates a forest plot of 100*(credible_interval)% credible intervals from a trace or list of traces.

Parameters
dataobj or list[obj]

Any object that can be converted to an az.InferenceData object Refer to documentation of az.convert_to_dataset for details

kindstr

Choose kind of plot for main axis. Supports “forestplot” or “ridgeplot”

model_nameslist[str], optional

List with names for the models in the list of data. Useful when plotting more that one dataset

var_names: list[str], optional

List of variables to plot (defaults to None, which results in all variables plotted)

combinedbool

Flag for combining multiple chains into a single chain. If False (default), chains will be plotted separately.

credible_intervalfloat, optional

Credible interval to plot. Defaults to 0.94.

rope: tuple or dictionary of tuples

Lower and upper values of the Region Of Practical Equivalence. If a list with one interval only is provided, the ROPE will be displayed across the y-axis. If more than one interval is provided the length of the list should match the number of variables.

quartilesbool, optional

Flag for plotting the interquartile range, in addition to the credible_interval intervals. Defaults to True

r_hatbool, optional

Flag for plotting Split R-hat statistics. Requires 2 or more chains. Defaults to False

essbool, optional

Flag for plotting the effective sample size. Requires 2 or more chains. Defaults to False

colorslist or string, optional

list with valid matplotlib colors, one color per model. Alternative a string can be passed. If the string is cycle, it will automatically chose a color per model from the matplotlibs cycle. If a single color is passed, eg ‘k’, ‘C2’, ‘red’ this color will be used for all models. Defauls to ‘cycle’.

textsize: float

Text size scaling factor for labels, titles and lines. If None it will be autoscaled based on figsize.

linewidthint

Line width throughout. If None it will be autoscaled based on figsize.

markersizeint

Markersize throughout. If None it will be autoscaled based on figsize.

ridgeplot_alphafloat

Transparency for ridgeplot fill. If 0, border is colored by model, otherwise a black outline is used.

ridgeplot_overlapfloat

Overlap height for ridgeplots.

figsizetuple

Figure size. If None it will be defined automatically.

Returns
gridspecmatplotlib GridSpec

Examples

Forestpĺot

>>> import arviz as az
>>> non_centered_data = az.load_arviz_data('non_centered_eight')
>>> fig, axes = az.plot_forest(non_centered_data,
>>>                            kind='forestplot',
>>>                            var_names=['theta'],
>>>                            combined=True,
>>>                            ridgeplot_overlap=3,
>>>                            figsize=(9, 7))
>>> axes[0].set_title('Estimated theta for 8 schools model')
../_images/arviz-plot_forest-1.png

Ridgeplot

>>> fig, axes = az.plot_forest(non_centered_data,
>>>                            kind='ridgeplot',
>>>                            var_names=['theta'],
>>>                            combined=True,
>>>                            ridgeplot_overlap=3,
>>>                            colors='white',
>>>                            figsize=(9, 7))
>>> axes[0].set_title('Estimated theta for 8 schools model')
../_images/arviz-plot_forest-2.png