Skip to content

Releases: Iro96/catplotlib

Release Version v0.1.0-beta

04 Dec 10:02
3c9ff82

Choose a tag to compare

Pre-release

Core Features

  • Line plots & scatter plots
    Creating simple visualizations is easy using a friendly API similar to Python’s matplotlib.

  • SVG output
    All figures render to an SVG file with no third-party dependencies.

  • Automatic axis limits & “nice” tick generation
    Ensures plots look clean without requiring manual range specification.

  • Text elements

    • Titles
    • X/Y axis labels
    • Basic layouting using browser-default font metrics
  • Grid and legend support

    • Toggleable grid
    • Automatic legend generation when labels are provided
  • Multiple subplots
    Use subplot(nrows, ncols, index) to construct multi-pane figure layouts.

  • Header-only, C++17
    Drop the library into a project and compile—no linking or runtime dependencies.

Build & Tooling

  • Requires CMake 3.15+
  • Requires a C++17 compiler (MSVC, GCC, Clang)
  • Ships with an example executable (catplot_example) demonstrating basic usage
  • Builds cleanly on major platforms (validated via CI)

Limitations

These are expected for an initial release and will be improved:

  • No PNG export yet (save_png() is present as a stub and throws)
  • Text layout is approximate (no font metrics)
  • Limited plot types (line/scatter only)
  • Basic legend & grid styling
  • Subplot layouting is simple and may need refinement
  • Error handling is minimal

Full Changelog: v.1.01-beta