Skip to main content

Utilities for generating plots and graphics for technical reports.

Project description

icplot

This is a library used at The Irish Centre for High End Computing (ICHEC) for generating plots, diagrams and other graphics for technical documents.

Features

The project has three primary modules:

converter: Converts between image formats, such as pdf, svg and png renderer: Render text based inputs as svg, pdf or png images or videos theme: Generate and apply themes from a design system

Converter

To covert between image formats you can do:

icplot convert --source my_image.svg --target my_image.png

Supported conversions are:

  • svg -> png
  • svg -> pdf
  • pdf -> png

Renderer

Render a range of text based formats to images or videos. For example,

icplot render --file uml_diagram.puml

renders the PlantUML file to png and svg.

Supported render inputs and targets are:

  • PlantUml
    • SVG
    • PNG
  • Latex/Tikz
    • PDF
    • SVG
    • PNG
  • Mermaid
    • SVG
    • PNG
  • Custom JSON
    • Graph
      • Backends:
        • Matplotlib
        • VTK
      • Output formats:
        • SVG
        • PNG
        • MP4
    • Tree
      • Backends:
        • Graphviz
      • Output formats:
        • SVG
        • PNG
    • Gantt
      • Backends:
        • Cairo
        • PgfGantt
      • Output formats:
        • SVG
        • PNG
    • Scene
      • Backends:
        • Cairo
        • VTK
      • Output formats:
        • SVG
        • VTK

Themes

The library supports themeing with an Angular Material 3 motivated design system. Plots can be themed by adapting a version of theme.json included in this module's source. Currently Tikz and PlantUML support themeing.

Installation

The package is available on PyPI. For a minimal installation you can do:

pip install icplot

For full functionality, particularly conversion of image formats, imagemagick and cairo are required. On Mac you can install them with:

brew install imagemagick cairo

Copyright

Copyright 2024 Irish Centre for High End Computing

The software in this repository can be used under the conditions of the GPLv3+ license, which is available for reading in the accompanying LICENSE file.

Project details


Download files

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

Source Distribution

icplot-0.3.5.tar.gz (58.7 kB view details)

Uploaded Source

Built Distribution

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

icplot-0.3.5-py3-none-any.whl (66.9 kB view details)

Uploaded Python 3

File details

Details for the file icplot-0.3.5.tar.gz.

File metadata

  • Download URL: icplot-0.3.5.tar.gz
  • Upload date:
  • Size: 58.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for icplot-0.3.5.tar.gz
Algorithm Hash digest
SHA256 94b996f5eeddc8782b098ffd0af5a9a43275d5a5007d30d69174e63d70742128
MD5 96b24aef70521ee26770dc632ad6ab26
BLAKE2b-256 b504b9c0fc091af5ba93852adf810637be8a00713af66e2ac91339e797c84fba

See more details on using hashes here.

File details

Details for the file icplot-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: icplot-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 66.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for icplot-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 306481031afbfe2e6e17d628cdae6b53373e2372a9cf58c9deaee948fedfca23
MD5 706c6615dc67df5df8b76857057aecd9
BLAKE2b-256 615426573d288067cbf118a424c931a72c9b2ed8f94e3f0fe7df56710cbb6e77

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page