jkriege2
25fcb2a74a
NEW add JKQTPParametrizedVectorFieldGraph, which draws color-coded vector fields (color from length, angle, or user-supplied data column) + example
2024-02-10 00:26:45 +01:00
jkriege2
24526aa6a5
NEW: added JKQTPGLabelCenteredOnData to JKQTPGraphLabelPosition, so JKQTPXYGraphLabels can draw directly centered over the datapoint
2024-02-09 16:59:14 +01:00
jkriege2
4e29109937
JKQTPVectorFieldGraph gained the option to also scale the line width with the vector length/magnitude
2024-02-09 16:45:40 +01:00
jkriege2
627c329ab1
replace JKQTPVectorFieldGraph::setAutoscaleLengthFactor() by an enum-property JKQTPVectorFieldGraph::setVectorLengthMode() and added a mode that ignores the length completely, the vectorfield example was also modified to better show this new property
2024-02-09 13:48:41 +01:00
jkriege2
1ff97e1d0a
doc update
2024-02-09 13:22:16 +01:00
jkriege2
eb315f648f
JKQTPVectorFieldGraph: added scaling factor for length-autoscaling
2024-02-09 11:41:19 +01:00
jkriege2
e2057ae27a
NEW: Base class JKQTPXYAndVectorGraph for graphs like vector fields, e.g. (x,y,dx,dy) or (x,y,angle,length)
...
NEW: ... and an actual implementation JKQTPVectorFieldGraph (+example)
2024-02-08 21:52:30 +01:00
jkriege2
a178a1f6d3
docfix
2024-02-06 22:58:02 +01:00
jkriege2
ac8e7c6adb
docfix
2024-02-06 16:20:48 +01:00
jkriege2
eb83feccaf
doc update + image rename
2024-02-06 15:19:20 +01:00
jkriege2
99f029e61e
updated copyright timerange to 2024
2024-02-06 14:50:49 +01:00
jkriege2
3c9bd56d9e
NEW: JKQTPXYGraphLabels which can draw a label next to each datapoint in the given x/y-dataset. The labels can be x-/y- or x&y-coordinates or custom, then defined by a user-supplied functor (+example \ref JKQTPlotterGraphLabels)
2024-02-06 14:49:14 +01:00
jkriege2
0009ff8f64
moved two protected methods from JKQTPCoordinateAxis to jkqtpstringtools.h/.cpp
2024-02-06 14:48:21 +01:00
jkriege2
e63f053896
DOC update
2024-02-06 12:18:54 +01:00
jkriege2
210c7aaa42
improved qHash-functions and class constructors
...
NEW jkqtp_hash_combine() and jkqtp_combine_hash()
2024-02-05 17:12:34 +01:00
jkriege2
3b231273ef
FIXED symmetry when zooming with JKQTBasePlotter::zoomIn() or JKQTBasePlotter::zoomOut()
2024-02-05 00:24:39 +01:00
jkriege2
26cb23e3ab
doc improvements
2024-02-04 22:06:09 +01:00
jkriege2
f606327469
RENAMED JKQTPDatastore::addColumnCalculatedFromColumn() to JKQTPDatastore::addCalculatedColumnFromColumn(), which is more in line with the other add...()-function names. Aliases with the old function names remain for compatibility
2024-02-04 21:42:53 +01:00
jkriege2
50746a09cf
brought removed operators in JKQTDataStore back
2024-02-02 16:09:42 +01:00
jkriege2
92b8894a3b
FIX: color bars did not show a complete frame around
2024-02-02 14:43:10 +01:00
jkriege2
57b298527e
IMPROVED: axis labeling: there were some minor differences between compilers
...
IMPROVED: jkqtp_floattounitstr()/jkqtp_floattolatexunitstr(): add all SI-Prefixes from 10^-30...10^30
BREAKING removed unused function variant of jkqtp_floattounitstr()
NEW Added unit test for jkqtp_floattounitstr()/jkqtp_floattolatexunitstr()
2024-02-02 14:24:41 +01:00
jkriege2
55625a25ee
IMPROVED/FIXED outside space requirements for color bars. Text was sometime too close to the plot border.
2024-02-02 14:03:16 +01:00
jkriege2
946e472ce7
FIXED removed unnecessary operator from JKQTPColumnIterator and JKQTPColumnConstIterator, which lead to exceptions on some compilers
2024-02-02 14:01:16 +01:00
jkriege2
868d6dcdf4
fixed several compile warnings
2024-01-23 13:09:37 +01:00
jkriege2
9c543953ca
fix CMake error
2024-01-23 00:48:42 +01:00
jkriege2
397d2bee9a
FIXed CMake build:generic ALIAS targets were defined incorrectly
2024-01-22 22:09:55 +01:00
jkriege2
8ccaaaebe6
NEW: added "currentcolor" as color-placeholder in style.ini files and using it in conjunction with linear-gradient() in cyberpunk and dark styles
...
NEW: added style simple_noaxes.ini
2024-01-22 21:31:09 +01:00
jkriege2
1d013685bf
fixed missing/wrong #include's
2024-01-22 18:44:46 +01:00
jkriege2
e5821eee3f
NEW allow linear-gradient()... in brush definitions of style.ini-file
2024-01-21 22:21:27 +01:00
jkriege2
a4fef01642
add general ALIAS targets JKQTPlotter::JKQTCOmmmon|JKQTPlotter|... which alias the current QT-Major-Version
2024-01-21 22:02:39 +01:00
jkriege2
b0df7a1fd7
NEW/BREAKING: provide general targets JKQTPlotter5/6::JKQTPlotter5/6, JKQTPlotter5/6::JKQTMathText5/6, ... which are independent of the type of build (shared/static)
...
NEW/BREAKING: refactor CMake-Code, so static/dynamic switch is done via <code>BUILD_SHARED_LIBS</code>, which retires <code>JKQtPlotter_BUILD_STATIC_LIBS</code>, <code>JKQtPlotter_BUILD_SHARED_LIBS</code> and removes the capability to build static and shared libraries in one location (fixes issue #104 )
NEW: prepareed library for CMake's <a href="https://cmake.org/cmake/help/latest/module/FetchContent.html ">FetchContent</a>-API
NEW: the different sub-libraries JKQTPlotter, JKQTFastPlotter (DEPRECATED), JKQTMath, JKQTMathText can be activated/deactivated with CMake options JKQtPlotter_BUILD_LIB_JKQTPLOTTER, JKQtPlotter_BUILD_LIB_JKQTFASTPLOTTER, JKQtPlotter_BUILD_LIB_JKQTMATHTEXT, JKQtPlotter_BUILD_LIB_JKQTMATH
2024-01-16 13:07:08 +01:00
jkriege2
4cd8a46245
FIXed drawing of secondary axes (distances betweeen axes were wrong, in part doubled and inside-ticks for secondary axes were not taken into account ... also fixed several minor bugs around this)
2024-01-10 12:35:48 +01:00
jkriege2
408f38dac1
FIXed some code analysis issues
2024-01-10 11:43:38 +01:00
jkriege2
f096aa9602
fixed several static code analysis warnings and security vulnerabilities
2024-01-10 10:35:43 +01:00
jkriege2
c03ad2b506
added missing #include
2024-01-09 21:52:35 +01:00
jkriege2
4a7b6b60d1
FIXed Security Alerts:
...
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/3
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/4
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/5
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/6
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/7
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/8
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/9
- https://github.com/jkriege2/JKQtPlotter/security/code-scanning/10
2024-01-09 17:38:46 +01:00
jkriege2
e0df1a8f0e
FIXed multiRow/MultiColumn distribution algorithm in JKQTPKey
2024-01-09 14:30:31 +01:00
jkriege2
09e07cb12a
NEW/REWORKED: extended the set of functions like JKQTMathTextGetTightBoundingRect(): These use an internal, thread-safe cache and capsule calls to QFontMetricsF-instances. This significantly improves speed in (parallelized) plotting.
2024-01-08 17:16:31 +01:00
jkriege2
3fee9609fb
NEW: Added CMake option JKQtPlotter_BUILD_WITH_TIMING_INFO_OUTPUT, which activates several runtime-measurement guards of type JKQTPAutoOutputTimer (output via qDebug())
2024-01-08 17:14:03 +01:00
jkriege2
6607432af0
bump required cmake version to 3.16 consistently
2024-01-06 15:37:59 +01:00
jkriege2
9662ed2d69
MODIFIED: Synchronization of JKQTMathText and JKQTBasePlotter over threads: using read/write lockers now and removed some unnecessary mutexes by using a kind of singleton pattern
2024-01-05 23:26:47 +01:00
jkriege2
11b9ac6c8b
FIXing and EXTENDing jkqtplotter_version.h
2024-01-05 21:01:46 +01:00
jkriege2
591f0dfe64
FIXED: using QSharedPointer for automatic memory management
2024-01-04 23:59:46 +01:00
jkriege2
d4930d7729
IMPROVED: JKQTPGraphsModel generated High-DPI Icons, if necessary
2023-12-22 21:09:41 +01:00
jkriege2
4017852df4
improved documentation and method grouping in JKQTBasePlotter
2023-12-22 20:58:43 +01:00
jkriege2
36947a4bca
REWORKED JKQTBasePlotter::saveData() with a more consistent interface and a bool return value to indicate success or failure + improved documentation
...
NEW: added two functions to JKQTPSaveDataAdapter
2023-12-22 20:34:32 +01:00
jkriege2
0595fef048
BREAKING/DEPRECATED: deprecated JKQTBasePlotter::zoom() and JKQTPlotter::zoom(), use JKQTBasePlotter::setXY() and JKQTPlotter::setXY() instead
...
NEW: improved documentation of class methods
2023-12-22 20:31:25 +01:00
jkriege2
ae157d928b
FIXED fix implementation for issue #110 from commit 99ff39a3d6
...
The solution did not work with half-open absoluteRanges!
2023-12-22 12:56:09 +01:00
jkriege2
99ff39a3d6
FIXED issue mentioned in https://github.com/jkriege2/JKQtPlotter/pull/110 : Lock the panning action to certain values: View zooms in, when panning close to AbosluteXY</a> (thanks to https://github.com/sim186 for reporting)
2023-12-21 15:10:20 +01:00
jkriege2
995ca92033
FIXED/REWORKED issue https://github.com/jkriege2/JKQtPlotter/issues/111 : Can't write to PDF files with JKQTPlotter::saveImage() when passing a filename ending in ".pdf" (thanks to https://github.com/fpalazzolo for reporting)
...
IMPROVED/REWORKED: The functions JKQTBasePlotter::saveImage(), JKQTBasePlotter::saveAsPixelImage(), JKQTBasePlotter::saveAsPDF(), JKQTBasePlotter::saveSVG(), ... gained a bool return value to indicate whether sacing was successful.
IMPROVED/REWORKED: More <code>save...()</code> functions will appear in the API of JKQTPlotter, so you don't have to go via JKQTPlotter::getPlotter(). These are merely forwarding the call to the internel JKQTBasePlotter instance.
2023-12-21 12:24:30 +01:00