an extensive Qt5 & Qt6 Plotter framework (including a feature-richt plotter widget, a speed-optimized, but limited variant and a LaTeX equation renderer!), written fully in C/C++ and without external dependencies
Go to file
2018-12-18 17:13:18 +01:00
doc added y-range-plot JKQTPfilledVerticalRangeGraph and example for it + date/time axes 2018-12-01 16:02:04 +01:00
lib restructured files in this lib further (splt into more files, made filenames more logical, ...) 2018-12-18 17:13:18 +01:00
screenshots added example that shows how to draw parametric curves 2018-12-16 15:35:50 +01:00
test restructured files in this lib further (splt into more files, made filenames more logical, ...) 2018-12-18 17:13:18 +01:00
.gitignore some more fixes for reorganization 2018-11-25 20:36:26 +01:00
JKQtFastPlotterBuildAllExamples.pro some reorganizations + QMake-build-projects with library 2018-12-02 14:08:43 +01:00
JKQtPlotterBuildAllExamples.pro added example that shows how to draw parametric curves 2018-12-16 15:35:50 +01:00
LICENSE Initial commit 2015-07-11 12:55:50 +02:00
README.md added example that shows how to draw parametric curves 2018-12-16 15:35:50 +01:00

JKQtPlotter

This is an extensive library of function/data plotter classes for Qt (>= 4.7, tested with Qt up to 5.11).

This software is licensed under the term of the GNU Lesser General Public License 2.1 (LGPL 2.1) or above.

Screenshots

Screenshots directory

Examples

This section assembles some simple examples of usage. You can find more (complex) examples for the classes in this repository in the subfolder "test". All test-projects are Qt-projects that use qmake to build. You can load them into QtCreator easily.

Different Plot Data Styles

Screenshot Description Notes
Very Basic Example (Line Graph) JKQTPxyLineGraph
C++-style QVector arrays of data
Line Graph with Live Data / Speed Test JKQTPxyLineGraph
external std::array<double,N> data, not owned by datastore
live-data, measure plotting speed
tipps to increas plotting speed
Line Graph with Different Symbols and Line Styles JKQTPxyLineGraph
C++ vector of data
setting line styles and symbol styles
automatic graph coloring
Step Line Plots in Different Styles JKQTPstepHorizontalGraph (and JKQTPxyLineGraph)
C++ vector of data
different step modes, filled and line-only
Simple Line/Symbol Graph With Errorbars JKQTPxyLineErrorGraph
C-style arrays of data
Different Types of Error Indicators JKQTPxyLineErrorGraph
different styles of error indicators for x- and y-errors
C++-style QVector for data
styling error indicators
moving key and formatting plotter grid
Simple Bar Charts JKQTPbarVerticalGraph
C-style arrays of data

Stacked Bar Charts JKQTPbarVerticalStackableGraph, JKQTPbarHorizontalStackableGraph
C++-style vectors of data
Filled Curve Plots JKQTPbarVerticalGraph
setting/altering data in JKQTPdatstore directly
transparent plots
calculating histograms
Impulse Plots JKQTPimpulsesVerticalGraph and JKQTPimpulsesHorizontalGraph
C++-style QVector as plot data
Scatter Graph with Parametrized Symbols/Colors JKQTPxyParametrizedScatterGraph
C++-style QVector as plot data
modify scatter/points/line-graph properties by data
Plotting Parametric Curves JKQTPxyLineGraph and JKQTPxyParametrizedScatterGraph
C++-style QVector as plot data
parametric curve plotting

Styling the Plot, Keys, Axes, ...

Screenshot Description Notes
logarithmic axes JKQTPxyLineGraph and JKQTPgeoText
C++ vector of data
logarithmic axes and styling
plot line styles
internal LaTeX parser
add commenting text to a graph


date/time axes JKQTPxyLineGraph and JKQTPfilledVerticalRangeGraph
C++ vector of data
date/time axes
plot min/max range graph
internal LaTeX parser
data from CSV files

Image data Plots

Screenshot Description Notes
QImage as a Graph JKQTPImage
QImage drawn onto a plot with arbitrary scaling)
Basic 1-channel Raw C Image Plot JKQTPColumnMathImage
image data copied from C-style row-major array into a single column of the internal datastore
Describes several options of the image plotting classes (different ways of color coding, what to do with data above/below the limits etc.)
Modifier-Feature of Image Plots JKQTPColumnMathImage
image data copied from C-style row-major array into a single column of the internal datastore
Image is modified by a second image to display two data dimensions at the same time
Basic 1-channel Raw C Image Plot
without the internal datastore
JKQTPMathImage
image data in a C-style row-major array, not using internal datastore
1-channel OpenCV cv::Mat Image Plot JKQTPColumnMathImage
image data copied from OpenCV cv::Mat-structure into a single column of the internal datastore
RGB OpenCV cv::Mat Image Plot JKQTPColumnRGBMathImage
image data copied from OpenCV cv::Mat-structure into three columns of the internal datastore

GUI Tools and Plot Layout

Screenshot Description Notes
Layouting Several Plots Combining plots in Qt Layouts
linking plot axes
copy data from a std::map int the datastore

Tools and Special Features

Screenshot Description Notes
JKQTMathText: LaTeX Renderer