Commit Graph

298 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
2a23d27c60 added JKQTPCoordinateAxis::setRangeFixed() which disables changing the axis range (and thus the zoom)
add JKQTPCoordinateAxis::getMin() and JKQTPCoordinateAxis::getMax() getters
2024-09-18 14:28:44 +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
Social_Mean
be48ed84ba
Add-qt5.12.12-compatibility (#127)
add qt5.12.12 compatibility

QList::swapItemsAt was introduced in Qt 5.13.
and more ,,, thanks to https://github.com/Social-Mean
2024-03-18 10:42:32 +01:00
jkriege2
d9f2383791 NEW: added JKQTPGLabelHalfwaysToXAxis+JKQTPGLabelHalfwaysToYAxis to JKQTPXYGraphLabels 2024-02-22 21:18:45 +01:00
jkriege2
924eb5fe91 doc fix 2024-02-14 00:10:48 +01:00
jkriege2
9349f486cb docfix 2024-02-14 00:03:38 +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
09c2d7430e fix compile error (missing #includes) 2024-02-11 18:30:54 +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
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
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
ac8e7c6adb docfix 2024-02-06 16:20:48 +01:00
jkriege2
51f0afe4cf update example doc 2024-02-06 16:15:03 +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
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
3e4ba547bd UPDATED auto-generated documentation images 2024-02-02 16:11:52 +01:00
jkriege2
92b8894a3b FIX: color bars did not show a complete frame around 2024-02-02 14:43:10 +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
6cab8dd3b0 some modifications to appveyor.yml ... and status-messages in simpletest_cmake 2024-01-26 18:35:49 +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
868d6dcdf4 fixed several compile warnings 2024-01-23 13:09:37 +01:00
jkriege2
e5821eee3f NEW allow linear-gradient()... in brush definitions of style.ini-file 2024-01-21 22:21:27 +01:00
jkriege2
ff08ffe27b fix typo 2024-01-17 21:37:01 +01:00
jkriege2
f7cbb1dea8 add example and explanation for use of CMake's FetchCOnten-API 2024-01-17 20:42:12 +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
843c0ac05b bump CMake version to 3.23 2024-01-16 13:07:07 +01:00
jkriege2
ef07a02e9b FIX issue #116 "Most of the examples fail to launch with MSVC2019 + Qt5 environment" (missing local variable declaration!) + changed a bit the font lookup code in JKQTMathText to work more in line with typical system configurations 2024-01-11 11:31:12 +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
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
11b9ac6c8b FIXing and EXTENDing jkqtplotter_version.h 2024-01-05 21:01:46 +01:00
jkriege2
76be6e4824 updated doc with correct numbers 2024-01-05 00:45:52 +01:00
jkriege2
8fdd21a7ed bugfixed doc 2024-01-05 00:40:10 +01:00
jkriege2
a2857b6826 fixed/expanded doc 2024-01-05 00:26:59 +01:00
jkriege2
6511c0111d FIX: JKQTPExampleApplication does no longer complain, if additional commmand line options are present (additionally to those declared in JKQTPExampleApplication) 2024-01-05 00:13:39 +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
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
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
11abcd1e77 fixed compile issues 2023-08-15 19:08:19 +02:00