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

Uploaded Python 3

File details

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

File metadata

  • Download URL: icplot-0.3.3.tar.gz
  • Upload date:
  • Size: 56.8 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.3.tar.gz
Algorithm Hash digest
SHA256 61360b5e8f23ec33e35d5674ddc2e5046c5d24737515e41ebe6ea327b5031f8c
MD5 ec2b37655b1cece108ffdd846b773545
BLAKE2b-256 2c7ed73d6443a9f927bf6d8d73b0304eff03c5e8ff83dc3f9caa9f640eaad0e5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: icplot-0.3.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 148f19cde7138c421749f3d0fdd62f500ee66bbff87f25901b69f74f82fa95f9
MD5 75193ffdfff760c5dd65e4ee4e9ef8d7
BLAKE2b-256 11d0b7fba18d7dfb7445d11425ef12a6c2b71e14a0c88a22daac6b2a2d35f1fb

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