All Projects → jkriege2 → Jkqtplotter

jkriege2 / Jkqtplotter

Licence: lgpl-2.1
an extensive Qt5 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

Projects that are alternatives of or similar to Jkqtplotter

asciichart-sharp
C# port of asciichart
Stars: ✭ 27 (-89.02%)
Mutual labels:  charting-library, plot, charting
QDashBoard
Sample dashboard developed with QML. Login, plots and several screens.
Stars: ✭ 34 (-86.18%)
Mutual labels:  qt, plot, qt5
Asciichart
Nice-looking lightweight console ASCII line charts ╭┈╯ for NodeJS, browsers and terminal, no dependencies
Stars: ✭ 1,107 (+350%)
Mutual labels:  plot, charting-library, charting
Qmarkdowntextedit
A C++ Qt QPlainTextEdit widget with markdown highlighting support and a lot of other extras
Stars: ✭ 182 (-26.02%)
Mutual labels:  qt, qt5
Scikit Plot
An intuitive library to add plotting functionality to scikit-learn objects.
Stars: ✭ 2,162 (+778.86%)
Mutual labels:  plotting, plot
Computator.net
Computator.NET is a special kind of numerical software that is fast and easy to use but not worse than others feature-wise. It's features include: - Real and complex functions charts - Real and complex calculator - Real functions numerical calculations including different methods - Over 107 Elementary functions - Over 141 Special functions - Over 21 Matrix functions and operations - Scripting language with power to easy computations including matrices - You can declare your own custom functions with scripting language
Stars: ✭ 174 (-29.27%)
Mutual labels:  scientific-visualization, plot
Shell
🐚 QtQuick and Wayland shell for convergence
Stars: ✭ 168 (-31.71%)
Mutual labels:  qt, qt5
Swift
Swift XMPP client and Swiften XMPP library
Stars: ✭ 190 (-22.76%)
Mutual labels:  qt, qt5
Browser
🌍 Cross-platform Material design web browser
Stars: ✭ 184 (-25.2%)
Mutual labels:  qt, qt5
Apk Editor Studio
Powerful yet easy to use APK editor for PC and Mac.
Stars: ✭ 197 (-19.92%)
Mutual labels:  qt, qt5
Qt Aes
Native Qt AES encryption class
Stars: ✭ 207 (-15.85%)
Mutual labels:  qt, qt5
Apkstudio
Open-source, cross platform Qt based IDE for reverse-engineering Android application packages.
Stars: ✭ 2,246 (+813.01%)
Mutual labels:  qt, qt5
Matplotplusplus
Matplot++: A C++ Graphics Library for Data Visualization 📊🗾
Stars: ✭ 2,433 (+889.02%)
Mutual labels:  scientific-visualization, charting-library
Qt5.cr
Qt5 bindings for Crystal, based on Bindgen
Stars: ✭ 182 (-26.02%)
Mutual labels:  qt, qt5
Qhexview
A versatile Hexadecimal widget for Qt5
Stars: ✭ 168 (-31.71%)
Mutual labels:  qt, qt5
Plotjuggler
The Time Series Visualization Tool that you deserve.
Stars: ✭ 2,620 (+965.04%)
Mutual labels:  qt5, plot
Matplotlib
matplotlib: plotting with Python
Stars: ✭ 14,738 (+5891.06%)
Mutual labels:  qt, plotting
Hanami
Interactive arts and charts plotting with Clojure(Script) and Vega-lite / Vega. Flower viewing 花見 (hanami)
Stars: ✭ 216 (-12.2%)
Mutual labels:  plotting, charting-library
Cqtdeployer
This project is used to deploy applications written using QML, qt or other С / С++ frameworks.
Stars: ✭ 225 (-8.54%)
Mutual labels:  qt, qt5
Kshare
The free and open source and cross platform screen sharing software.
Stars: ✭ 151 (-38.62%)
Mutual labels:  qt, qt5

JKQTPlotter - A Qt Plotting Library

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

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

Lates Release

Language Qt&5 Documentation

CI: Windows Build CI: Documentation/Linux/MacOX Build

Commit Activity Last Commit Contributors

Open Issues Closed Issues

Open PRs Closed PRs

Code Quality Code Grade

EXAMPLES-Page

Main Features

  • 2D Plotter widget class (JKQTPlotter)
    • high-quality plotting
    • no other dependencies than Qt >= 5.0
    • highly customizable axes/grids (linear/log, date/time, custom ticks ...)
    • integrated LaTeX parser (pure C++, no dependencies) to render mathematical equations in axis labels, ticks, ...
    • extensive user-interactions pre-programmed (several zooming modes, selecting regions, custom context menus, switch graph visibility, ...)
    • full print and export (PDF,PNG,...) support with preview and parametrization out-the-box
    • highly customizable look and feel
    • supports the Qt layout system for graphs and allows to symchronize several graphs with each other
  • centralized data management in an internal datastore:
    • data organized by columns, can also represent image data (ropw-major)
    • allows to reuse a column in several graphs
    • access via Qt's model view framework
    • external or internal datasets
    • complete with GUI (table view)
    • export capabilities (e.g. to CSV, SYLK, ...)
    • C++ standard iterator interface
    • statistics library (basic statistics, boxplots, histograms, kernel density estimates, regression analysis, polynomial fitting)
  • large variety of graphs that can be added to a plot, e.g.:
    • scatter-plots (also parametrized color/size/symbol by a third data-column)
    • line graphs, step graphs, impulses
    • filled curves
    • barcharts (also stacked)
    • extensive support for different styles of error indicators
    • integrated mathematical function parser for function plots (with intelligent rendering algorithm)
    • line/scatter graphs can also be based on C/C++ functions instead of data series (C++11 support!)
    • statistical plots (e.g. boxplots)
    • extensive library of image plots (inclusing different color-scale modes, RGBA-plots, overlays/masks)
    • contour plots
    • geometric forms/annotations
    • can be easily extended by deriving a new graph from JKQTPPlotElement, JKQTPPlotAnnotationElement, JKQTPGeometricPlotElement, JKQTPGraph
  • optional: OpenCV, CImg interfaces
  • CMake-based build system
  • extensive set of Examples/Tutorials
  • extensive doxygen-generated Documentation

Documentation

A Documentation (auto-)generated with doxygen from the trunk source code can be found here: http://jkriege2.github.io/JKQTPlotter/index.html

Examples

There is a large set of usage examples (with explanations for each) and tutorials in the folder ./examples/. All test-projects are Qt-projects that use qmake to build. You can load them into QtCreator easily.

Screenshots

The Screenshots-page contains several screenshots, partly taken from the provided examples, but also from other software using this libarary (e.g. QuickFit 3.0)

EXAMPLES-Page

Building

Lates Release

JKQTPlotter contains two different build systems: A modern CMake-based build and an older (and deprecated!) QMake-based build (which works out of the box with Qt 5.x). Both systems are explained in detail in http://jkriege2.github.io/JKQtPlotter/page_buildinstructions.html.

With CMake you can easily build JKQTPlotter and all its examples, by calling something like:

    $ mkdir build; cd build
    $ cmake .. -G "<cmake_generator>" "-DCMAKE_PREFIX_PATH=<path_to_your_qt_sources>"
    $ cmake --build . --config "Debug"
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].