ArviZ support

ArviZ support#

As of version 2.2, corner supports plotting ArviZ samples, providing a consistent interface to many MCMC samplers.

Here is a simple example of this:

import corner
import numpy as np
import arviz as az

np.random.seed(11234)

x = np.random.randn(2, 2000)
data = az.from_dict(
    posterior={"x": x, "y": np.random.randn(2, 2000, 2)},
    sample_stats={"diverging": x < -1.2},
)

figure = corner.corner(data, divergences=True)
../../_images/f77dfbd78d83cad0e8c4e0358a6f1cac9be03caa2a008be39e9f8807e902995f.png

When using this interface, it is probably best to provide the truths parameter using a dictionary keyed on the variable names:

figure = corner.corner(data, truths={"x": 1.5, "y": [-0.3, 0.1]})
../../_images/9934a1bcceeabe308e18e70a17fb05ef1abae2e3aece344d24615af256c0c07a.png