skillfed

histoprint

Pretty print of NumPy (and other) histograms to the console

histoprint v2.7.0 389.4K downloads/30d#7,030 on PyPI37
Permissive license MIT Active released

What it is and what it does

Histoprint is a terminal-based histogram visualization tool that takes NumPy histogram data (or compatible formats from boost-histogram and uproot) and renders it to the console using Unicode characters and ANSI color codes. It supports multiple display modes: overlaying histograms on top of each other, stacking them, or showing summary statistics alongside the plot. The package handles variable bin widths and can display up to multiple histograms simultaneously with custom colors, symbols, and labels.

The tool is designed for quick data exploration in environments where graphical output is unavailable or impractical—such as remote servers, CI/CD pipelines, or interactive terminal sessions. It includes both a Python API (text_hist and print_hist functions) and a command-line interface that can read tabulated data, CSV files, or ROOT files directly, making it useful for scientists and data engineers who work frequently in the terminal.

Use it for:

  • Explore data distributions on remote servers or SSH sessions where graphical displays are unavailable.
  • Quickly visualize histogram data in Jupyter notebooks or IPython sessions without launching a separate plotting library.
  • Compare multiple distributions side-by-side in terminal output that can be copied and pasted into documentation or logs.
  • Analyze ROOT files or boost-histogram objects directly from the command line without writing Python scripts.
  • Generate histogram summaries in CI/CD pipelines or batch processing workflows where terminal output is the primary medium.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Histoprint renders NumPy histograms and compatible histogram objects to the terminal using Unicode and color codes, supporting overlay and stacked display modes.

Yes. Histoprint is actively maintained, has no security vulnerabilities, installs with minimal friction, and fills a genuine niche for terminal-based histogram visualization. It is particularly valuable for remote work, server-side data exploration, and reproducible terminal output. The MIT license poses no restrictions. Install it if you regularly work in terminal environments and need quick histogram visualization.

Install

histoprint on PyPI

pip

pip install histoprint

uv

uv add histoprint

poetry

poetry add histoprint

Installing histoprint

Before you install

Low friction: pure Python wheel with only three runtime dependencies (click, numpy, uhi). Actively maintained with a release 16 days ago and recent commits.

License in practice

MIT license is permissive; you can use, modify, and distribute histoprint freely in commercial and private projects with minimal restrictions.

Quickstart

pip install histoprint

import numpy as np
from histoprint import print_hist

hist = np.histogram(np.random.randn(1000), bins=15)
print_hist(hist, title="My Histogram")

Requires Python 3.10 or later. Some terminals may not display Unicode combining characters correctly; use symbols parameter to disable them if needed.

Verify before relying

  • Whether the package handles very large histograms (millions of bins) without performance degradation.
  • Compatibility with non-standard terminal emulators or Windows Terminal variants beyond the documented Unicode limitation.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 3 — click, numpy, uhi
Maintenance actively maintained — 16 days since the last release
Last repo commit
First released
Downloads 389,378/month — #7,030 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: histoprint-2.7.0-py3-none-any.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/Engineering

Tags

terminal histogram visualizationconsole histogram pretty printnumpy histogram displayunicode histogram renderingcolored histogram outputoverlaying histograms terminalhistogram to console
data-visualizationterminal-uiscientific-computing

More Scientific/Engineering packages