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.1.tar.gz (56.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.1-py3-none-any.whl (65.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for icplot-0.3.1.tar.gz
Algorithm Hash digest
SHA256 b8e31559e4ae31613df062e9abcaddd31a6fee254802fcaa8ebdbf32bef0a4c1
MD5 de4e75f4649088b57d1ea78e57c9028f
BLAKE2b-256 1ec90b3793ef8933cca1159ba5b4e83bfc93b680423e7b98b1aea8c903f94663

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for icplot-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d851005c7334681d03caf9e2cbc6775a473ada16439a67c80d95ef25920c729f
MD5 062e8b265aec9b10a36e603c6c776193
BLAKE2b-256 e078e90834ff02bc72fe05cbe6df81113b3b30afc3d3b6a0b966ff9422a5d8ef

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