cplt
Plot CSV files directly in your terminal. Zero GUI. Zero notebooks. Just your CLI.
Why cplt
Most terminal plotting tools handle bars and lines, but not timeline ranges from CSV start/end columns. cplt focuses on that workflow while still covering the common chart types:
timelinefor Gantt-style range plotsbarfor value-count distributionlinefor numeric trends over time or sequencehistfor numeric column histogramsbubblefor presence/absence matricessummarisefor fast column profiling
Get Started In 30 Seconds
pip install cplt
cplt timeline -f data/projects.csv --x planned_start --x planned_end --y project
Install
pip install cplt
# or
pipx install cplt
Standalone binaries are available from the latest GitHub release.
Enable shell completion after install:
cplt --install-completion
What It Looks Like
Tab Completion
Deep completion for --where filters: discover available columns, then see matching values.
Summarise
Quick column profiling — types, nulls, uniques, and smart distribution views at a glance. Low-cardinality columns get percentage breakdowns, numerics get sparkline histograms, and ID columns are detected automatically.
cplt summarise -f data/titanic.csv
Timeline / Gantt
Visualise project schedules as Gantt-style ranges with color-coded status and a "today" marker.
cplt timeline -f data/projects.csv --x start_date --x end_date --y project --color status
Bar Chart
Count values in a column, filter with --where, and label the bars.
cplt bar -f data/titanic.csv -c Embarked
Line Chart
Plot numeric trends over time with --head to limit rows and --title for context.
cplt line -f data/temperatures.csv --x Date --y Temp --head 40
Histogram
Plot the distribution of a numeric column with automatic binning and statistics overlay.
cplt hist -f data/titanic.csv -c Age --bins 10
Bubble Matrix
Spot missing data patterns across columns. Rows are labeled, columns are presence/absence dots, colored by group.
cplt bubble -f data/titanic.csv --cols Cabin --cols Age --y Name --head 12
Quick Start
# 1) inspect columns and data quality
cplt summarise -f data/projects.csv
# 2) make your first timeline
cplt timeline -f data/projects.csv --x planned_start --x planned_end --y project
# 3) filter rows
cplt bar -f data/titanic.csv -c Embarked --where "Sex=female"
Output Modes
All plotting and summary commands support --format:
visual(default): full Rich/plotext terminal visualssemantic: ANSI-stripped visual output (useful for LLM UX inspection)compact: token-efficient output for LLM analysis pipelines
Example:
cplt bar -f data/titanic.csv -c Sex --format compact
Docs
- CLI reference:
docs/cli.md - Project docs:
docs/
For Contributors
Developer-only workflows (UX review loop, artifact generation, docs tooling, tests) live in DEVELOPERS.md.
License
Metadata
Release files for cplt 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| cplt-0.4.0.tar.gz | 835.4 kB | With provenance | Details for cplt-0.4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| cplt-0.4.0-py3-none-any.whl | Python 3 | none | any | Details for cplt-0.4.0-py3-none-any.whl |
Total release size: 877.8 kB
Release files / cplt-0.4.0.tar.gz
| Download URL | cplt-0.4.0.tar.gz |
|---|---|
| Size | 835.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2f3400ad3f684cc0e3e88a95e43e9f1840c58411ff93df55257dc2d4a8eaa6dd
|
|
BLAKE2b-256 checksum How to use checksums |
072efd24af2c01490a686bf2ee8910437d69bd886b865c80cdcfa57d8009eecc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 15, 2026.
Transparency logRelease files / cplt-0.4.0-py3-none-any.whl
| Download URL | cplt-0.4.0-py3-none-any.whl |
|---|---|
| Size | 42.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2133f7834c55a60b7b5a8c66b0701c753bb5e6dd48bfa83bd3287e18cc77ef55
|
|
BLAKE2b-256 checksum How to use checksums |
742a4bdac792008ad40c3f5f0d8a4fb54cea7912eb80e4d2e8a3aefbca09b3cf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 15, 2026.
Transparency logSecurity for cplt 0.4.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for cplt-0.4.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 15, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.