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/464e7592134866053c77fdd14d5f765bc90c524a414b7f251ed53d7a48b7e9b6.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/1feb755d1851b8c51c91cfed603e69c2662404c2b28fca45eb859460bc4d20f6.png