ArviZ.jl: Exploratory analysis of Bayesian models in Julia

ArviZ.jl is a Julia package for exploratory analysis of Bayesian models. It is codeveloped with the Python package ArviZ and in some cases temporarily relies on the Python package for functionality.


To install ArviZ.jl, we first need to install Python ArviZ. To use with the default Python environment, first install Python ArviZ. From the Julia REPL, type ] to enter the Pkg REPL mode and run

pkg> add ArviZ

To install ArviZ.jl with its Python dependencies in Julia's private conda environment, in the console run

PYTHON="" julia -e 'using Pkg; Pkg.add("PyCall");"PyCall"); Pkg.add("ArviZ")'

For specifying other Python versions, see the PyCall documentation.


See the Quickstart for example usage and the API Overview for description of functions.

Extending ArviZ.jl

To use a custom data type with ArviZ.jl, simply overload convert_to_inference_data to convert your input(s) to an InferenceData.

Known Issues

ArviZ.jl uses PyCall.jl to wrap ArviZ. At the moment, Julia segfaults if Numba is imported, which ArviZ does if it is available. For the moment, the workaround is to specify a Python version that doesn't have Numba installed. See this issue for more details.