https://github.com/tschoonj/gtkmm-plplot
a scientific plotting library for Gtkmm leveraging the power of PLplot
https://github.com/tschoonj/gtkmm-plplot
boost c-plus-plus-11 gtkmm gtkmm-plplot linux macos multi-platform plot-library plplot windows
Last synced: about 1 month ago
JSON representation
a scientific plotting library for Gtkmm leveraging the power of PLplot
- Host: GitHub
- URL: https://github.com/tschoonj/gtkmm-plplot
- Owner: tschoonj
- License: lgpl-3.0
- Created: 2015-07-14T10:23:04.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2023-12-29T14:25:55.000Z (over 1 year ago)
- Last Synced: 2025-03-26T20:21:26.523Z (about 2 months ago)
- Topics: boost, c-plus-plus-11, gtkmm, gtkmm-plplot, linux, macos, multi-platform, plot-library, plplot, windows
- Language: C++
- Homepage: http://tschoonj.github.io/gtkmm-plplot
- Size: 43.1 MB
- Stars: 70
- Watchers: 12
- Forks: 17
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/tschoonj/gtkmm-plplot/actions?query=workflow%3ACI) [](https://lgtm.com/projects/g/tschoonj/gtkmm-plplot/context:cpp) [](https://lgtm.com/projects/g/tschoonj/gtkmm-plplot/alerts/) [](https://github.com/sponsors/tschoonj) [](https://www.paypal.me/tomschoonjans/10) [](http://amzn.eu/8ml3d0c) [](https://gitter.im/gtkmm-plplot/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
# Gtkmm-PLplot
Gtkmm-PLplot is a simple plotting library that brings the power of PLplot to Gtkmm. It does so by relying on the Gtk::DrawingArea widget whose drawing signal uses PLplot's extcairo plotting device to generate publication quality plots on your screen...
Currently this library is under heavy development but it should already be useful for simple two-dimensional graphs. The API should not be considered to be stable at all and will be changed without warning...
Gtkmm-PLplot is licensed under the LGPLv3.
## Features
* Create plots using two std::vector, std::valarray and boost::multi_array objects.
* Zoom in by dragging a selection box.
* Support for two-dimensional plots, polar plots, contour plots with or without shaded regions, three-dimensional line plots
* Supports multiple, independently controlled plots on a single canvas.
* Extensive use of libsigc++ signals
* Highly extensible## Requirements
* Gtkmm4
* PLplot (at least 5.11.0 but earlier versions may also work, the C++ bindings are required)
* a C++17 compiler (GCC, clang...)
* Boost (optional)## Supported platforms
Development occurs mostly on a Mac but I will ensure it also runs properly on Windows and Linux...
## Documentation
I have generated documentation with Doxygen. Have a look at http://tschoonj.github.io/gtkmm-plplot.
## Downloads
Tarballs can be found [here](https://github.com/tschoonj/gtkmm-plplot/releases)
Homebrew users as well as Linux aficionados will find installations instructions in the [documentation](https://tschoonj.github.io/gtkmm-plplot/installation_instructions.html)
## TODO
* plsurf3d, plmesh
* ~~histograms~~
* ~~Scroll to zoom in/out~~
* plimage
* ...Tom Schoonjans