Gammapy is a Python package built on Numpy, Scipy and Astropy, as well as a few other required dependencies. For certain functionality, optional dependencies are used. The recommended way to install Gammapy is via a conda environment which includes all required and optional dependencies (see Installation).
Note that when you install Gammapy with conda (or actually any alternative distribution channel), you have a full package manager at your fingertips. You can conda or pip install any extra Python package you like (e.g. pip install pyjokes), upgrade or downgrade packages to other versions (very rarely needed) or uninstall any package you don’t like (almost never useful, unless you run out of disk space).
Gammapy itself, and most analyses, work on Windows. However, two optional dependencies don’t support Windows yet: Sherpa (an optional fitting backend) and healpy (needed to work with HEALPix maps, which is common for all-sky analyses).
Required dependencies are automatically installed when using e.g.
install gammapy -c conda-forge or
pip install gammapy.
numpy - array and math functions
scipy - numerical methods (interpolation, integration, convolution)
Astropy - core package for Astronomy in Python
regions - Astropy sky region package
click - used for the
gammapycommand line tool
pydantic - support config file validation
The optional dependencies listed here are the packages listed in the conda
environment specification (see Installation). This is a mix of packages that
make it convenient to use Gammapy (e.g.
jupyter), or that add
extra functionality (e.g.
matplotlib to make plots,
naima for physical
matplotlib for plotting
pandas for working with tables (not used within Gammapy)
iminuit for fitting by optimization
Sherpa for modeling and fitting
naima for SED modeling
emcee for fitting by MCMC sampling
corner for MCMC corner plots