Skip to main content

Jarvis-PLOT

Jarvis-PLOT 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.

Current package version: 1.4.2.


Installation

pip install JarvisPLOT

The PyPI / distribution name is JarvisPLOT (normalized wheel name: jarvisplot). The product name remains Jarvis-PLOT. The Python import package and entrypoint remain unchanged:

import jarvisplot
jplot path/to/config.yaml

If you have an older environment that still uses a historical package name, replace:

pip uninstall jarvisplot Jarvis-PLOT JarvisPLOT
pip install JarvisPLOT

Command-Line Usage

Human help uses the same fixed-column Rich panels as Jarvis-HEP V2 / Portal:

jplot -h
jplot validate -h
jplot man                  # manual index
jplot man workflow         # topic page

Render (bare path — there is no jplot run):

jplot path/to/config.yaml
jplot path/to/config.yaml --rebuild-cache

Discover / judge (write YAML yourself in an editor):

jplot data describe samples.csv --json
jplot cap methods --json
jplot doctor plot.yaml --json
jplot man workflow --json          # agent-structured manual
jplot config expand plot.yaml --figure p --write   # type: → layers

Render a Jarvis-HEP flowchart scene JSON:

jplot flowchart path/to/scene.json
# optional output path:
jplot flowchart path/to/scene.json -o path/to/out.png

Library form:

from jarvisplot import render_flowchart, render_flowchart_file

Project Workdir and Cache

  • You can set project.workdir in YAML.
  • If output.dir is omitted, Jarvis-PLOT 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 + render bin) for large datasets.

Example: SUSYRun2 Ternary Plots

jplot ./bin/SUSYRun2_EWMSSM.yaml
jplot ./bin/SUSYRun2_GEWMSSM.yaml

Note: The data file paths inside the YAML files must be updated to match your local setup.

Example: Dynesty Runplot

Jarvis-PLOT includes a reusable dynesty runplot format. With a dataset named dynesty, the figure can use the built-in card without writing axes or layer details:

DataSet:
- name: dynesty
  path: path/to/dynesty_result.csv
  type: csv

Figures:
- name: dynesty_logL_vs_logX
  enable: true
  style:
  - a4paper_2x1
  - dynesty_runplot

See docs/specs/DYNESTY_RUNPLOT.md for the default axes, KDE, scatter overlay, and evidence summary behavior.


Notes

  • Figures are saved automatically to the output paths defined in the YAML configuration.
  • Common output formats include PNG and PDF (backend-dependent).
  • Saved figures include file metadata such as Creator: Jarvis-PLOT, powered by Jarvis-HEP and Jarvis-PLOT version: X.Y.Z; the PNG Description also includes both fields for macOS Finder compatibility.
  • Jarvis-PLOT works in headless environments (SSH, batch jobs) without any GUI backend.

Requirements

Python

  • Python ≥ 3.10 (tested on 3.10–3.13)

Required Packages

  • numpy
  • pandas
  • polars
  • matplotlib
  • pyyaml
  • jsonschema
  • scipy — numerical utilities
  • h5py — required for loading HDF5 data files
  • shapely
  • sympy
  • loguru
  • deepmerge
  • Jarvis-Operas>=1.1.4

Github Page

https://github.com/Pengxuan-Zhu-Phys/Jarvis-PLOT

Documentation

https://pengxuan-zhu-phys.github.io/Jarvis-Docs/

Repository Docs

Tracked project docs live in docs/.

  • docs/README.md - repo doc index
  • docs/context/JARVIS_PLOT_CONTEXT.md - primary Codex-facing boundary doc
  • docs/context/CODE_MAP_JARVIS_PLOT.md - concrete code owner map
  • docs/context/JARVIS_PLOT_FRAMEWORK_LOGIC.md - runtime execution contract
  • docs/roadmap/IMPLEMENTATION_ROADMAP.md - active backlog and future work list
  • docs/specs/AGENT_DATA_API.md - planned agent bridge (spec only)
  • docs/dev/DEVELOPER_RULES.md - current pipeline and cache rules
  • docs/dev/MEMORY_OPTIMIZATION_GUIDE.md - narrow-table memory notes

Read the context docs and roadmap before changing parsing, transforms, rendering, or layout-related behavior.


License

MIT License

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jarvisplot-2.0.3.tar.gz (3.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jarvisplot-2.0.3-py3-none-any.whl (3.9 MB view details)

Uploaded Python 3

File details

Details for the file jarvisplot-2.0.3.tar.gz.

File metadata

  • Download URL: jarvisplot-2.0.3.tar.gz
  • Upload date:
  • Size: 3.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.13

File hashes

Hashes for jarvisplot-2.0.3.tar.gz
Algorithm Hash digest
SHA256 9b96504c93a1e9a161640c14e16306f90735e602580780e1ce0a3449cd659629
MD5 479c84a4a77bd44dd454da6f97f2535b
BLAKE2b-256 054559f0baee5a0a7f11b99e8b3f6007c2bd79291f60f5ccd4927ed2927ac384

See more details on using hashes here.

File details

Details for the file jarvisplot-2.0.3-py3-none-any.whl.

File metadata

  • Download URL: jarvisplot-2.0.3-py3-none-any.whl
  • Upload date:
  • Size: 3.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.13

File hashes

Hashes for jarvisplot-2.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 307c9ec99c3066eba59126db4a5bccb956d5159f2a97090c124364ef511a8930
MD5 8b182678e6df6ddb42bfdccdcd162748
BLAKE2b-256 23974604ee25d3fc71eba4569d7a138c0bbe8c671dc086b22142bc6fdc6f5f32

See more details on using hashes here.

Release history Release notifications | RSS feed

2.1.4

2 files

2.1.3

2 files

2.1.2

2 files

2.1.1

2 files

2.1.0

2 files

2.0.6

2 files

2.0.5

2 files

2.0.4

2 files

This release

2.0.3 This release

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 files

1.3.11

2 files

1.3.10

2 files

1.3.9

2 files

1.3.8

2 files

1.3.7

2 files

1.3.6

2 files

1.3.5

2 files

1.3.4

2 files

1.3.3

2 files

1.3.2

2 files

1.3.1

2 files

1.3.0

2 files

1.2.5

2 files

1.2.4

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.12

2 files

1.0.11

2 files

1.0.10

2 files

1.0.9

2 files

1.0.8

2 files

1.0.7

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page