Skip to main content

GitHub License Coverage - Codecov Coverage - Coveralls PyPI - Version PyPI - Downloads

CoolPlot

Property diagrams and psychrometric charts for engineering thermodynamics, with CoolProp as the source of every property: log(p)-h, T-s, h-s, p-s, p-rho, T-rho and p-T diagrams for pure fluids and refrigerant blends, cycles drawn on top of them, and psychrometric charts for humid air.

A log(p)-h chart of propane with a heat pump cycle

from coolplot import PropertyDiagram
from coolplot.thermo.cycles import simple_compression

diagram = PropertyDiagram("R290", "ph", units="engineering", tp_limits="ACHP")
diagram.set_default_lines(labels=True, rounding=True)
diagram.add_cycle(simple_compression("R290", T_evap_C=-5, T_cond_C=45, dT_sh_K=5))
diagram.save("R290_ph.png")           # or .pdf, .svg; show() opens a window

Cycles can be given state by state in the chart's units, by two properties or by the process that leads to a state:

diagram.add_cycle("Heat pump", [
    {"p": 3.0, "T": 0.0},                               # 1 compressor inlet, bar and deg C
    {"p": 15.0, "via": "compression", "eta_is": 0.7},   # 2 compressor outlet
    {"p": 15.0, "Q": 0.0},                              # 3 condenser outlet
    {"p": 3.0, "via": "isenthalpic"},                   # 4 after the valve
])

What else it does:

  • Isoline labels sit at the edges of the chart, as on printed charts, and keep clear of the cycles.
  • Blends: the dome from CoolProp's phase envelope, the temperature glide inside it, a chart in seconds.
  • Units: SI, kPa and kJ, deg C and bar, or inch-pound; a change of units costs no new calculation.
  • Output: PNG and PDF through matplotlib (fonts embedded, texts kept as text, several charts per file), SVG with no dependencies, plotly figures and HTML pages, live charts in a web page.
  • Interactive: zoom, hover and dragging of cycle states in matplotlib and in a web page; only what changed is recomputed and redrawn; lines can be computed in the background.

The documentation (getting started, tutorials, how-to pages, the API reference and a gallery of the examples) is built from docs/ and published on Read the Docs; make docs builds it locally.

The code was forked from the main CoolProp repository at v6.3.0 with its history preserved, hence the old commits. Version 0.2 replaced the legacy API (from CoolPlot.Plot import PropertyPlot); the upgrade guide in the documentation gives the equivalents, and pip install "coolplot<0.2" keeps the last legacy release. From 1.0 to 2.0 the public API is stable.

Pull requests are encouraged!

Installation

The project gets published on PyPi as coolplot and you can install it using pip

pip install coolplot                # core, includes the SVG backend
pip install "coolplot[matplotlib]"  # with the matplotlib backend

License

This Python package is released under the terms of the MIT license.

Metadata

Release files for CoolPlot 1.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for CoolPlot 1.5.0
File Size Uploaded Provenance Actions
coolplot-1.5.0.tar.gz 418.1 kB With provenance Details for coolplot-1.5.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for CoolPlot 1.5.0
File Interpreter ABI Platform Actions
coolplot-1.5.0-py3-none-any.whl Python 3 none any Details for coolplot-1.5.0-py3-none-any.whl

Total release size: 762.4 kB

Release files / coolplot-1.5.0.tar.gz

Download URL coolplot-1.5.0.tar.gz
Size 418.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a5ecdfa98521e400c49c3d35d4a491d485740da2c4cc2c9b5a40f14d31f6cd22
BLAKE2b-256 checksum
How to use checksums
67a7e6130f276927205de305ef028b05f315b6f8ff02d55a83c613f93126e3df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 3, 2026.

Transparency log

Release files / coolplot-1.5.0-py3-none-any.whl

Download URL coolplot-1.5.0-py3-none-any.whl
Size 344.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c94b7db29a9699a52fd333c01e02c388d5fd337966ecdb14c21c6e6fade35137
BLAKE2b-256 checksum
How to use checksums
adb20eb3faa75b4531eb6e80326593cefee0a6912f98fec398ddb8cb7a05f581
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 3, 2026.

Transparency log

Security for CoolPlot 1.5.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.

Select from 2 files

Attestation for coolplot-1.5.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 Nov 3, 2026.

Transparency log

A 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.

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