Commit Graph

314 Commits

Author SHA1 Message Date
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
jkriege2
bcc626172e NEW: Using axis's tick label formating properties to format values in data-tooltips (e.g. dates will appear formated as such) 2024-02-14 13:59:59 +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
de68d8b8d6 NEW: added financial graphs (Candlestick or OHLC) and example for these 2024-02-11 14:18:50 +01:00
jkriege2
f860f76e72 doc update 2024-02-10 16:46:33 +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
4d58448d17 docfix 2024-02-09 13:57:42 +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
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
3b231273ef FIXED symmetry when zooming with JKQTBasePlotter::zoomIn() or JKQTBasePlotter::zoomOut() 2024-02-05 00:24:39 +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
b338606bc1 FIXED/SECURITY not using \c sprintf() any more ... replaced by e.g. \c snprintf() , which is more secure. 2024-02-02 16:20:55 +01:00
jkriege2
50746a09cf brought removed operators in JKQTDataStore back 2024-02-02 16:09:42 +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
1858385952 FIXED issue #118: "Dangerous warning in MacOS and clang" (thanks to user:igormironchik for reporting): a forward-declared class (i.e. incomplete type) was deleted 2024-02-02 11:35:00 +01:00
jkriege2
acae5929d1 JKQtMathText: NEW: added \c \\~{} , \c \\^{}, \c \\`{}, ... instructions 2024-02-01 12:14:46 +01:00
jkriege2
c0bbe8f557 FIXED issue <a href="https://github.com/jkriege2/JKQtPlotter/issues/117">#117: Unnecessary printing of tilde symbol in math</a> (thanks to <a href="https://github.com/igormironchik">user:igormironchik</a> for reporting):<br/>Tilde was not recognized as a LaTeX instruction, now is interpreted as non-breaking whitespace 2024-01-31 15:47:26 +01:00
jkriege2
bcbce121c1 ensure that either CMAKE_BUILD_TYPE or CMAKE_CONFIGURATION_TYPES is set in CMake 2024-01-27 14:20:31 +01:00
jkriege2
99592b29d8 typofix 2024-01-26 18:42:00 +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
2b0dcca224 update whatsnew.dox 2024-01-21 22:22:38 +01:00
jkriege2
eb7a068fb7 NEW CSS-parser JKQTPCSSParser in order to parse e.g. \c linear-gradient() specifications in jkqtp_String2QBrushStyleExt()
NEW generic RegularExpression functions (jkqtp_rxExactlyMatches(), jkqtp_rxIndexIn(), jkqtp_rxContains(), jkqtp_rxPartiallyMatchesAt() )
2024-01-21 22:12:15 +01:00
jkriege2
11bafa52e4 NEW add jkqtp_roundToDigits() 2024-01-21 22:08:14 +01:00
jkriege2
2559097fd2 NEW add JKQTPExpected 2024-01-21 22:05:26 +01:00
jkriege2
d0a00a8c4c rename, doc update 2024-01-21 22:01:28 +01:00
jkriege2
31759543da NEW: add unit-test facilities (incl. running them on AppVeyor) 2024-01-21 21:58:56 +01:00
jkriege2
9600cc20fa docfix 2024-01-17 20:53:37 +01:00
jkriege2
f7cbb1dea8 add example and explanation for use of CMake's FetchCOnten-API 2024-01-17 20:42:12 +01:00
jkriege2
9e5737624c update whatsnew.dox 2024-01-16 16:58:38 +01:00
jkriege2
3412b4df32 docfix 2024-01-16 15:35: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
0ae712ad43 REWORKED improved implementation of jkqtp_bounded<T>(TIn v), which now can cope with cases where TIn is signed, but T is unsigned 2024-01-09 17:38:54 +01:00
jkriege2
9337976e30 updated whatsnew.dox 2024-01-08 20:32:30 +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
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
8c01738359 add TODO 2023-12-22 20:32:08 +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
jkriege2
5dcd73222b fix typo 2023-12-19 11:40:13 +01:00
jkriege2
0080f07bda improve doc 2023-12-19 11:18:28 +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
8b1c7c093d added whatsnew-messages for merged PRs 2023-10-25 13:43:25 +02:00