Matplotlib Example Gallery

Autocorrelation Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

data = load_example_data("centered_eight")
plot_autocorr(data; var_names=[:tau, :mu])

gcf()

See plot_autocorr

Bayesian P-Value Posterior Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

data = load_example_data("regression1d")
plot_bpv(data)

gcf()

See plot_bpv

Bayesian P-Value with Median T Statistic Posterior Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

data = load_example_data("regression1d")
plot_bpv(data; kind=:t_stat, t_stat="0.5")

gcf()

See plot_bpv

Compare Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

model_compare = compare(
    Dict(
        "Centered 8 schools" => load_example_data("centered_eight"),
        "Non-centered 8 schools" => load_example_data("non_centered_eight"),
    ),
)
plot_compare(model_compare; figsize=(12, 4))

gcf()

See compare, plot_compare

Density Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

centered_data = load_example_data("centered_eight")
non_centered_data = load_example_data("non_centered_eight")
plot_density(
    [centered_data, non_centered_data];
    data_labels=["Centered", "Non Centered"],
    var_names=[:theta],
    shade=0.1,
)

gcf()

See plot_density

Dist Plot

using Random
using Distributions
using PyPlot
using ArviZ

Random.seed!(308)

ArviZ.use_style("arviz-darkgrid")

a = rand(Poisson(4), 1000)
b = rand(Normal(0, 1), 1000)
_, ax = plt.subplots(1, 2; figsize=(10, 4))
plot_dist(a; color="C1", label="Poisson", ax=ax[1])
plot_dist(b; color="C2", label="Gaussian", ax=ax[2])

gcf()

See plot_dist

ELPD Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

d1 = load_example_data("centered_eight")
d2 = load_example_data("non_centered_eight")
plot_elpd(Dict("Centered eight" => d1, "Non centered eight" => d2); xlabels=true)

gcf()

See plot_elpd

Energy Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

data = load_example_data("centered_eight")
plot_energy(data; figsize=(12, 8))

gcf()

See plot_energy

ESS Evolution Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

idata = load_example_data("radon")
plot_ess(idata; var_names=[:b], kind=:evolution)

gcf()

See plot_ess

ESS Local Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

idata = load_example_data("non_centered_eight")
plot_ess(idata; var_names=[:mu], kind=:local, marker="_", ms=20, mew=2, rug=true)

gcf()

See plot_ess

ESS Quantile Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

idata = load_example_data("radon")
plot_ess(idata; var_names=[:sigma], kind=:quantile, color="C4")

gcf()

See plot_ess

Forest Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

centered_data = load_example_data("centered_eight")
non_centered_data = load_example_data("non_centered_eight")
plot_forest(
    [centered_data, non_centered_data];
    model_names=["Centered", "Non Centered"],
    var_names=[:mu],
)
title("Estimated theta for eight schools model")

gcf()

See plot_forest

Ridge Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

rugby_data = load_example_data("rugby")
plot_forest(
    rugby_data;
    kind=:ridgeplot,
    var_names=[:defs],
    linewidth=4,
    combined=true,
    ridgeplot_overlap=1.5,
    colors=:blue,
    figsize=(9, 4),
)
title("Relative defensive strength\nof Six Nation rugby teams")

gcf()

See plot_forest

Plot HDI

using Random
using PyPlot
using ArviZ

Random.seed!(308)

ArviZ.use_style("arviz-darkgrid")

x_data = randn(100)
y_data = 2 .+ x_data .* 0.5
y_data_rep = 0.5 .* randn(200, 100) .+ transpose(y_data)
plot(x_data, y_data; color="C6")
plot_hdi(x_data, y_data_rep; color=:k, plot_kwargs=Dict(:ls => "--"))

gcf()

See plot_hdi

Joint Plot

using PyPlot
using ArviZ

ArviZ.use_style("arviz-darkgrid")

data = load_example_data("non_centered_eight")
plot_pair(
    data;
    var_names=[:theta],
    coords=Dict(:school => ["Choate", "Phillips Andover"]),
    kind=:hexbin,
    marginals=true,
    figsize=(10, 10),
)

gcf()