|
wxMathPlot - Plot Library for wxWidgets Applications
|
wxMathPlot is a framework for mathematical graph plotting in wxWindows.
The framework is designed for convenience and ease of use.
The heart of wxMathPlot is mpWindow, which is a 2D canvas for plot layers. mpWindow can be embedded as subwindow in a wxPane, a wxFrame, or any other wxWindow. mpWindow provides a zoomable and moveable view of the layers. The current view can be controlled with the mouse, the scrollbars, and a context menu.
Plot layers are implementations of the abstract base class mpLayer. Those can be function plots, scale rulers, or any other vector data visualisation. wxMathPlot provides two mpLayer implementations for plotting horizontal and vertical rulers: mpScaleX and mpScaleY. For convenient function plotting a series of classes derived from mpLayer are provided, like mpFX, mpProfile, mpLegend and so on. These base classes already come with plot code, user's own functions can be implemented by overriding just one member for retrieving a function value.
mpWindow has built-in support for mouse-based pan and zoom through intuitive combinations of buttons and the mouse wheel. It also incorporates an optional caching mechanism to avoid flicker. Plots can be easily sent to printers or exported in bitmap formats like PNG, BMP or JPEG.
wxMathPlot sticks to wxWindow's coding conventions.
All entities defined by wxMathPlot have the prefix mp.
wxMathPlot is published under the terms of the wxWindow license.
The original author is David Schalig mrhil.nosp@m.l@us.nosp@m.ers.s.nosp@m.ourc.nosp@m.eforg.nosp@m.e.ne.nosp@m.t.
From June 2007 ~ 2023 the project was maintained by Davide Rondini cdron.nosp@m.77@u.nosp@m.sers..nosp@m.sour.nosp@m.cefor.nosp@m.ge.n.nosp@m.et.
Original Authors possibly can be contacted via the original wxMathPlot's homepage at https://sourceforge.net/projects/wxmathplot.
Current maintainers can be contacted via https://github.com/GitHubLionel/wxMathPlot
Contributors:
Jose Luis Blanco, Val Greene, Lionel Reynaud, Dave Nadler, MortenMacFly, Oskar Waldemarsson
Define the preprocessor symbol MP_ENABLE_CONFIG to have a configuration window. In this dialog box window, the user can modify most plot properties like displayed series, title, legend, scale, ...
Define the preprocessor symbol MP_ENABLE_NAMESPACE to place all wxMathPlot components within the namespace MathPlot.
Define the preprocessor symbol MP_USER_INCLUDE to the base name of a header, without the .h suffix, to have mathplot.h include your custom header. This can be used for custom internationalization support or other project-specific integration. For example:
...causes mathplot.h to include MyIncludeFile.h.