JarvisPLOT is a lightweight, Python/Matplotlib-based plotting framework developed for Jarvis-HEP,
but it can also be used as a standalone scientific plotting tool.
It provides a simple command-line interface (CLI) to generate publication-quality figures from YAML configuration files, with most layout and style decisions handled by predefined profiles and style cards.
pip install jarvisplotDisplay help information:
jplot -hRun JarvisPLOT with one or more YAML configuration files:
jplot path/to/config.yamlRebuild local cache for the current project workdir:
jplot path/to/config.yaml --rebuild-cache- You can set
project.workdirin YAML. - If
output.diris omitted, JarvisPLOT now defaults to<workdir>/plots/. - Data cache is stored in
<workdir>/.cache/. - Profiling pipelines are prebuilt once and reused from cache when source fingerprint and profile settings are unchanged.
- Profiling uses a fast two-stage grid reduction (
pregrid+ renderbin) for large datasets.
jplot ./bin/SUSYRun2_EWMSSM.yaml
jplot ./bin/SUSYRun2_GEWMSSM.yamlNote: The data file paths inside the YAML files must be updated to match your local setup.
- Figures are saved automatically to the output paths defined in the YAML configuration.
- Common output formats include PNG and PDF (backend-dependent).
- JarvisPLOT works in headless environments (SSH, batch jobs) without any GUI backend.
- Python ≥ 3.10 (tested on 3.10–3.13)
numpypandasmatplotlibpyyamljsonschemascipy— numerical utilitiesh5py— required for loading HDF5 data filesshapelyscipysympy
https://github.com/Pengxuan-Zhu-Phys/Jarvis-PLOT
https://pengxuan-zhu-phys.github.io/Jarvis-Docs/
MIT License