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.0.tar.gz (56.4 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.0-py3-none-any.whl (64.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for icplot-0.3.0.tar.gz
Algorithm Hash digest
SHA256 40bf83d7dd6c8d2e13a971a84916795b72c565dac4949f00ad5c487b68c7c095
MD5 99590568b63f6e951d019ea6c993c422
BLAKE2b-256 265ccee03042fc06db7f25949b7f7ba97380d1d1be65b0aeaf4d8aac1df683a3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for icplot-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bb6a41214025b9668e7bfc2a5b2315344b26b9d8ffbe5930d15fbcfdff2ec672
MD5 15fd77c1362feae238a9a73080a3b6d8
BLAKE2b-256 b475c186a395786caf37255b59638b41b3017774a29e04b3b824258185a8c871

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