mirror of
https://github.com/jkriege2/JKQtPlotter.git
synced 2024-12-25 10:01:38 +08:00
updated documentation and whatsnew.dox
This commit is contained in:
parent
d99637398a
commit
85e60e3e56
@ -8,6 +8,8 @@ This software is licensed under the term of the [GNU Lesser General Public Licen
|
|||||||
|
|
||||||
![Language](https://img.shields.io/github/languages/top/jkriege2/JKQtPlotter)
|
![Language](https://img.shields.io/github/languages/top/jkriege2/JKQtPlotter)
|
||||||
[![Qt5](https://img.shields.io/badge/Qt-5-brightgreen)](https://doc.qt.io/qt-5/)
|
[![Qt5](https://img.shields.io/badge/Qt-5-brightgreen)](https://doc.qt.io/qt-5/)
|
||||||
|
[![Qt6](https://img.shields.io/badge/Qt-6-brightgreen)](https://doc.qt.io/qt-6/)
|
||||||
|
|
||||||
[![Documentation](https://img.shields.io/badge/documentation-online-blue)](http://jkriege2.github.io/JKQtPlotter/index.html)
|
[![Documentation](https://img.shields.io/badge/documentation-online-blue)](http://jkriege2.github.io/JKQtPlotter/index.html)
|
||||||
|
|
||||||
[![Build status](https://ci.appveyor.com/api/projects/status/vq2o9pfi97isxm2a?svg=true)](https://ci.appveyor.com/project/jkriege2/jkqtplotter)
|
[![Build status](https://ci.appveyor.com/api/projects/status/vq2o9pfi97isxm2a?svg=true)](https://ci.appveyor.com/project/jkriege2/jkqtplotter)
|
||||||
@ -29,7 +31,7 @@ This software is licensed under the term of the [GNU Lesser General Public Licen
|
|||||||
## Main Features
|
## Main Features
|
||||||
- 2D Plotter widget class (JKQTPlotter)
|
- 2D Plotter widget class (JKQTPlotter)
|
||||||
- high-quality plotting
|
- high-quality plotting
|
||||||
- no other dependencies than Qt >= 5.0
|
- no other dependencies than Qt >= 5.0 ([CImg](https://cimg.eu/) and [OpenCV](https://opencv.org/) are optional dependencies)
|
||||||
- highly customizable axes/grids (linear/log, date/time, custom ticks ...)
|
- 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, ...
|
- 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, ...)
|
- extensive user-interactions pre-programmed (several zooming modes, selecting regions, custom context menus, switch graph visibility, ...)
|
||||||
|
@ -44,7 +44,7 @@ PROJECT_NUMBER =
|
|||||||
# for a project that appears at the top of each page and should give viewer a
|
# for a project that appears at the top of each page and should give viewer a
|
||||||
# quick idea about the purpose of the project. Keep the description short.
|
# quick idea about the purpose of the project. Keep the description short.
|
||||||
|
|
||||||
PROJECT_BRIEF = "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"
|
PROJECT_BRIEF = "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"
|
||||||
|
|
||||||
# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
|
# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
|
||||||
# in the documentation. The maximum height of the logo should not exceed 55
|
# in the documentation. The maximum height of the logo should not exceed 55
|
||||||
|
@ -89,6 +89,8 @@ Here is the \c CMakeLists.txt from that directory:
|
|||||||
|
|
||||||
# Configure project for usage of Qt5
|
# Configure project for usage of Qt5
|
||||||
find_package(Qt5 COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGl REQUIRED)
|
find_package(Qt5 COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGl REQUIRED)
|
||||||
|
# Configure project for usage of Qt6
|
||||||
|
#find_package(Qt6 COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGl OpenGLWidgets REQUIRED)
|
||||||
|
|
||||||
# include JKQTPlotter
|
# include JKQTPlotter
|
||||||
find_package(JKQTCommonLib REQUIRED)
|
find_package(JKQTCommonLib REQUIRED)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
\mainpage JKQTPlotter - A Qt Plotting Library
|
\mainpage 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 is an extensive library of function/data plotter classes for Qt5 (tested with Qt up to 5.15) and Qt6 (tested with Qt up to 6.3).
|
||||||
- This software is licensed under the term of the GNU Lesser General Public License 2.1
|
- This software is licensed under the term of the GNU Lesser General Public License 2.1
|
||||||
(LGPL 2.1) or above. See \ref licensesec for details.
|
(LGPL 2.1) or above. See \ref licensesec for details.
|
||||||
- <a href="http://jkriege2.github.io/JKQtPlotter/index.html">Online-Documentation (http://jkriege2.github.io/JKQtPlotter/index.html)</a>
|
- <a href="http://jkriege2.github.io/JKQtPlotter/index.html">Online-Documentation (http://jkriege2.github.io/JKQtPlotter/index.html)</a>
|
||||||
@ -14,7 +14,7 @@
|
|||||||
\section jkqtp_main_features Main Features
|
\section jkqtp_main_features Main Features
|
||||||
- <b>Extensive Scientific 2D Plotting framework (JKQTPlotter / JKQTBasePlotter)</b>
|
- <b>Extensive Scientific 2D Plotting framework (JKQTPlotter / JKQTBasePlotter)</b>
|
||||||
- high-quality plotting
|
- high-quality plotting
|
||||||
- no other dependencies than Qt >= 5.0
|
- no other required dependencies than Qt5 or Qt6
|
||||||
- highly customizable axes/grids (linear/log, date/time, custom ticks ...)
|
- highly customizable axes/grids (linear/log, date/time, custom ticks ...)
|
||||||
- integrated LaTeX parser/renderer JKQTMathText for axis labels, ticks, notes ...
|
- integrated LaTeX parser/renderer JKQTMathText for axis labels, ticks, notes ...
|
||||||
- \ref JKQTPLOTTER_USERINTERACTION "extensive user-interactions pre-programmed (several zooming modes, selecting regions, custom context menus, switch graph visibility, ...)"
|
- \ref JKQTPLOTTER_USERINTERACTION "extensive user-interactions pre-programmed (several zooming modes, selecting regions, custom context menus, switch graph visibility, ...)"
|
||||||
|
@ -41,6 +41,7 @@ Changes, compared to \ref page_whatsnew_V2019_11 "v2019.11" include:
|
|||||||
<li>improved/breaking change: made more functions and function parameters const</li>
|
<li>improved/breaking change: made more functions and function parameters const</li>
|
||||||
<li>improved/breaking change: image plots now manage CONST-data, not plain pointer arrays... This is OK, since the raw data is never owned nor modified by the plot, only referenced!.</li>
|
<li>improved/breaking change: image plots now manage CONST-data, not plain pointer arrays... This is OK, since the raw data is never owned nor modified by the plot, only referenced!.</li>
|
||||||
<li>bugfixed/improved: aspect ratio handling in JKQTPlotter.</li>
|
<li>bugfixed/improved: aspect ratio handling in JKQTPlotter.</li>
|
||||||
|
<li>new: Compatibility with Qt 5.15 and Qt6</li>
|
||||||
<li>new: added geometric plot objects JKQTPGeoArrow to draw arrows (aka lines with added line-end decorators, also extended JKQTPGeoLine, JKQTPGeoInfiniteLine, JKQTPGeoPolyLines to draw line-end decorator (aka arrows)</li>
|
<li>new: added geometric plot objects JKQTPGeoArrow to draw arrows (aka lines with added line-end decorators, also extended JKQTPGeoLine, JKQTPGeoInfiniteLine, JKQTPGeoPolyLines to draw line-end decorator (aka arrows)</li>
|
||||||
<li>new: all geometric objects can either be drawn as graphic element (i.e. lines are straight line, even on non-linear axes), or as mathematical curve (i.e. on non-linear axes, lines become the appropriate curve representing the linear function, connecting the given start/end-points). The only exceptions are ellipses (and the derived arcs,pies,chords), which are always drawn as mathematical curves</li>
|
<li>new: all geometric objects can either be drawn as graphic element (i.e. lines are straight line, even on non-linear axes), or as mathematical curve (i.e. on non-linear axes, lines become the appropriate curve representing the linear function, connecting the given start/end-points). The only exceptions are ellipses (and the derived arcs,pies,chords), which are always drawn as mathematical curves</li>
|
||||||
<li>new: a new graph class JKQTPXYFunctionLineGraph draws parametric 2D curves ( \f$ [x,y] = f(t) \f$ ), see \ref JKQTPlotterEvalCurves for an example</li>
|
<li>new: a new graph class JKQTPXYFunctionLineGraph draws parametric 2D curves ( \f$ [x,y] = f(t) \f$ ), see \ref JKQTPlotterEvalCurves for an example</li>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# set minimum required CMake-Version
|
# set minimum required CMake-Version
|
||||||
cmake_minimum_required(VERSION 3.10)
|
cmake_minimum_required(VERSION 3.20)
|
||||||
|
|
||||||
# set Project name
|
# set Project name
|
||||||
set(EXAMPLE_NAME simpletest)
|
set(EXAMPLE_NAME simpletest)
|
||||||
@ -12,7 +12,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
|||||||
set(CMAKE_CXX_STANDARD 11)
|
set(CMAKE_CXX_STANDARD 11)
|
||||||
#set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
#set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
||||||
|
|
||||||
# Configure project for usage of Qt5
|
# Configure project for usage of Qt5/Qt6
|
||||||
find_package(QT NAMES Qt6 Qt5 COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGl REQUIRED)
|
find_package(QT NAMES Qt6 Qt5 COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGl REQUIRED)
|
||||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGL REQUIRED)
|
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGL REQUIRED)
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ This project (see [`cmake_link_example`](https://github.com/jkriege2/JKQtPlotter
|
|||||||
This example uses very simple code, which simply displays a plotter and shows some data. The important part of this example is the ´CMakeLists.txt`-file:
|
This example uses very simple code, which simply displays a plotter and shows some data. The important part of this example is the ´CMakeLists.txt`-file:
|
||||||
```
|
```
|
||||||
# set minimum required CMake-Version
|
# set minimum required CMake-Version
|
||||||
cmake_minimum_required(VERSION 3.10)
|
cmake_minimum_required(VERSION 3.20)
|
||||||
|
|
||||||
# set Project name
|
# set Project name
|
||||||
set(EXAMPLE_NAME simpletest)
|
set(EXAMPLE_NAME simpletest)
|
||||||
@ -15,11 +15,13 @@ This example uses very simple code, which simply displays a plotter and shows so
|
|||||||
# some basic configurations
|
# some basic configurations
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||||
set(CMAKE_CXX_STANDARD 11)
|
set(CMAKE_CXX_STANDARD 11) # for Qt5
|
||||||
|
#set(CMAKE_CXX_STANDARD 17) # for QT6
|
||||||
#set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
#set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
||||||
|
|
||||||
# Configure project for usage of Qt5
|
# Configure project for usage of Qt5/Qt6
|
||||||
find_package(Qt5 COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGl REQUIRED)
|
find_package(QT NAMES Qt6 Qt5 COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGl REQUIRED)
|
||||||
|
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Widgets PrintSupport Svg Xml OpenGL REQUIRED)
|
||||||
|
|
||||||
# include JKQTPlotter
|
# include JKQTPlotter
|
||||||
find_package(JKQTCommonLib REQUIRED)
|
find_package(JKQTCommonLib REQUIRED)
|
||||||
|
Loading…
Reference in New Issue
Block a user