Commit Graph

165 Commits

Author SHA1 Message Date
jkriege2
20e6f09e94 FIX: remove QPainter::setRenderHint(QPainter::VerticalSubpixelPositioning) as this does not seem to improve outcomes
Some checks are pending
CodeQL / Analyze (cpp) (push) Waiting to run
Doxygen build&deploy / build (push) Waiting to run
MSVC-CodeAnalysis / Analyze (push) Waiting to run
2024-10-17 13:49:33 +02:00
jkriege2
7d37140837 NEW: added example which shows how to bin a QScrollBar to a JKQTPlotter 2024-09-18 14:37:46 +02:00
jkriege2
aa4ac4c58a FIXED issue #128: Question about rendering unicode in plot labels: Unicode characters were not rendered if they are not in the currently active font, as fallback-rendering was switched off. It is now switched on again for text and verbatim nodes. Thanks to user:fpalazzolo for reporting this bug
FIXED font rendering was not always anti-aliased
2024-03-28 22:01:59 +01:00
jkriege2
e152e984f6 docfix 2024-02-14 13:57:44 +01:00
jkriege2
59758ce2be doc update 2024-02-13 23:56:13 +01:00
jkriege2
2365caf83b NEW: JKQTPGeoBezierCurve for drawing bezier curves of degree 1-4 (+example) 2024-02-13 23:49:23 +01:00
jkriege2
f40bb2010d NEW: stacked barcharts may have a small separation (default 1pt)
NEW: autoscaling for barcharts works now, also when stacked and unstacked charts are combined in one plot
NEW: proper styling for financial graphs in style.ini-files
REWORKED: separation and gruping factor for barcharts on autoscaling
doc update
2024-02-12 22:21:13 +01:00
jkriege2
dd940ab569 doc update and many bugfixes 2024-02-12 15:01:46 +01:00
jkriege2
503ef13275 modified default style a bit ... using FIRASans as math font and increased font size a bit to make them easier readable 2024-02-11 18:59:21 +01:00
jkriege2
75b2971477 updyted stylesbanner.png 2024-02-11 14:19:06 +01:00
jkriege2
de68d8b8d6 NEW: added financial graphs (Candlestick or OHLC) and example for these 2024-02-11 14:18:50 +01:00
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
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
7443752ded improved example banner and screenshot website 2024-02-09 11:49:05 +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
0eae9fa6f8 update doc images 2024-02-06 14:57:02 +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
3e4ba547bd UPDATED auto-generated documentation images 2024-02-02 16:11:52 +01:00
jkriege2
d93a21f852 FIXED ITERATORS EXAMPLE. AUTO-GENERATED IMAGES WERE WRONG 2024-02-02 16:11:31 +01:00
jkriege2
1bf6c43134 MODIFIED JKQTPDataCache to implement a limited-size cache with least-recently-used delete stategy 2024-01-24 22:33:32 +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
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
0423205fb1 updated doc images 2024-01-08 21:33:21 +01:00
jkriege2
fa9773d7db updated multithreaded test measurement 2024-01-08 21:18:58 +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
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
76be6e4824 updated doc with correct numbers 2024-01-05 00:45:52 +01:00
jkriege2
a2857b6826 fixed/expanded doc 2024-01-05 00:26:59 +01:00
jkriege2
aa2fcb108d NEW/REWORKED JKQTBasePlottercan be used is re-entrant, i.e. different instances can be used from different threads in parallel (although there is significant overhead due to shared caches between the threads!).
NEW added multithreaded example to demonstrate using JKQTBasePlotter in several parallel threads
2024-01-05 00:12:48 +01:00
jkriege2
f2004a6f66 NEW/BREAKING: rework layouting of keys/legends: new classes JKQTPBaseKey, JKQTPMainKey ... and removed several styling function for the main key from JKQTBasePlotter and JKQTPlotter (these are now accessible via JKQTBasePlotter::getMainKey()
IMPROVED/REWORKED: legend/key positioning as combination of 3 values, e.g. \c JKQTPKeyOutsideTop|JKQTPKeyTop|JKQTPKeyRight or \c JKQTPKeyInside|JKQTPKeyTopJKQTPKeyRight
2023-12-18 22:24:59 +01:00
jkriege2
134739c5a5 FIXED: Height of one-column key/legend was too large 2023-08-24 22:11:44 +02:00
jkriege2
5cc0b65d9a NEW: added JKQTPLabelMinBesides and JKQTPLabelMaxBesides to JKQTPLabelPosition, so labels can be set besides the axes 2023-08-24 21:49:39 +02:00
jkriege2
84270e49b0 improvement to fix for #99: add even more space in some cases 2023-08-22 18:02:00 +02:00
jkriege2
53fa433387 updated auto-generated images 2023-08-22 17:53:47 +02:00
jkriege2
fa50c3c130 NEW: added JKQTBasePlotterStyle::plotLabelTopBorder and made plot labels BOLD 2023-08-16 14:04:04 +02:00
jkriege2
49d79e610d FIXED/NEW: placement of plot-title (was not centerd in its box, but glued to the bottom) by adding a plotstyle parameter JKQTBasePlotterStyle::plotLabelOffset 2023-08-15 15:26:06 +02:00
jkriege2
e66abc47ac update plot imaged for tutorials: datastore, datastorw_groupstat, datastore_regression, datastore_iterators, datastore_statistics 2023-08-15 15:02:39 +02:00
jkriege2
4edaa3e1e2 BREAKING/FIXED: JKQTPXFunctionLineGraph and JKQTPYFunctionLineGraph do no longer contribute to auto-scaling, as that depends on the current plot-axes (hen-egg-problem). 2023-08-14 13:51:18 +02:00
jkriege2
474e511073 auto-create doc-iages from datastore example 2023-08-14 12:37:22 +02:00
jkriege2
b1954af38b updated auto-generated doc images 2023-08-04 15:33:03 +02:00
jkriege2
c38f69ae9a NEW: added JKQTPPaletteList::reverse() and JKQTPPaletteList::sort()
FIXED: fixed stepsGnBl-palettte and greenblue-palette
2023-07-30 22:56:48 +02:00
jkriege2
4cf343ea30 CHANGED: updated default palette_MatlabLegacy_step.png
NEW: added more steps palettes
2023-07-30 22:30:09 +02:00
jkriege2
ca84d664ad NEW: add color palettes from Green's HELIX method, see https://arxiv.org/abs/1108.5083, see JKQTPCreateGreensCubeHelixLUT() and e.g. JKQTPMathImageCubeHelixClassic, JKQTPMathImageCubeHelix1, ... 2023-07-22 15:33:09 +02:00
jkriege2
3e4f039efb fixed some Qt5 compile errors 2023-07-22 10:45:11 +02:00
jkriege2
b5ce109c01 update auto-generated doc images 2023-07-22 00:19:02 +02:00
jkriege2
a492b75724 updated default style parameters (more modern) 2023-07-01 23:23:35 +02:00
jkriege2
d23ea0a79e fix issue #96: JKQTPlotter::saveAsPixelImage() does not add a border around the image any longer (can be reacivated by a new optional function parameter) 2023-07-01 22:27:00 +02:00
jkriege2
a1408ccbd0 JKQTMathText: Update several layouting nodes (especially braces) 2023-07-01 15:57:57 +02:00