jkriege2
ea6db847d8
Merge branch 'master' of https://github.com/jkriege2/JKQtPlotter
2022-07-19 08:01:49 +02:00
jkriege2
d8c1524f61
partly solve issue #81 by making print-support optional. In addition it can be switched off with the CMake-option JKQtPlotter_BUILD_FORCE_NO_PRINTER_SUPPORT=ON
2022-07-18 23:33:20 +02:00
jkriege2
d132009679
added some additional accent-control-sequences
2022-07-18 15:01:42 +02:00
jkriege2
a1a2fcdd3f
clean-up of library dependencies
2022-07-18 15:01:12 +02:00
jkriege2
a8da6caf0d
IMPROVED JKQTMathText: tokenizing and parsing of text in text-mode: now a lot of accents with commands like \"a, \'e and variants (e.g. {\"a}, \"{a}, ...) are supported now
...
NEW in JKQTMathText: added \acute{X}, \grave{X}, \acute{X}
2022-07-10 22:01:11 +02:00
jkriege2
24cb74fc06
bugfixed Qt5.x problem
2022-07-09 10:57:46 +02:00
jkriege2
5dee5ae93d
JKQTMathText: refactored \\instruction parsing
...
JKQTMathText: added \shaded{color}{...}, \ovalbox{}, ... commands
2022-07-08 23:15:42 +02:00
jkriege2
36aeec13aa
refactored/simplified JKQTMathText::parseLatexString()
...
bugfixed regression: JKQTMathText displays \left.\right)-type braces and \sum,\int,... with and without \limits correctly again
2022-07-06 22:44:02 +02:00
jkriege2
f9370799fc
minor bugfix: missing return
2022-07-06 21:00:24 +02:00
jkriege2
fc83ebea4c
Wingdings symbols
2022-07-06 21:00:03 +02:00
jkriege2
0ab3626f4d
refactored symbol node, should also fix issue #78
2022-07-05 22:03:08 +02:00
jkriege2
341e1ac2ef
bugfixed missing QFontMettricsF::width() in newer Qt versions, should fix issue #77
2022-07-05 20:14:51 +02:00
jkriege2
2ef181301b
NEW: JKQTMathText: added functions to set the font-size in pixels (as alternative to the existing functions that set them in points), implements request #76
2022-07-04 21:02:43 +02:00
jkriege2
9a13e5127a
JKQTMathText: improve documentation (fixes issue #74 ), add new draw()-variant, which accepts a QPointF
2022-07-03 21:30:12 +02:00
jkriege2
0f958cc2d6
- JKQTMathText: IMPROVED/breaking: refactored symbol node JKQTMathTextSymbolNode and changed font-lookup!
...
- JKQTMathText: IMPROVED/NEW/breaking: refactored whitespace-processing node JKQTMathTextWhitespaceNode, now all major LaTeX whitespace commands are supported properly
2022-07-03 20:30:12 +02:00
jkriege2
8814523e63
BUGFIX: JKQTMathText: corrected size-calculation and drawing of decorations
2022-06-28 23:14:31 +02:00
jkriege2
9a7e44889f
IMPROVED: JKQTMathText: optional parameter of \sqrt is properly parsed now
2022-06-28 21:59:50 +02:00
jkriege2
6c26e250da
IMPROVED: JKQTMathText: rendering of sqrt
2022-06-28 12:00:20 +02:00
jkriege2
b83e0a3292
NEW: JKQTMathText: added \underbracket and \overbracket
2022-06-28 10:15:54 +02:00
jkriege2
fc557c9aff
IMPROVEMENT: JKQTMathText: added x-correction for sub/superscript above/below/besides integrals
2022-06-27 22:57:49 +02:00
jkriege2
56418f9504
IMPROVEMENTS: JKQTMathText: underbrace/overbrace and angle-braket improvements
2022-06-27 21:09:22 +02:00
jkriege2
ebdc183b2b
IMPROVED: JKQTMathText: improved drawing of parantheses, square brackets ...
2022-06-26 23:46:11 +02:00
jkriege2
2d2acc3b19
NEW: JKQTMathText: added top-corner (\ulcorner/\urcorner) and bottom-corner brackets (\llcorner/\lrcorner)
2022-06-26 21:17:42 +02:00
jkriege2
45d6ef373b
bugfix: JKQTMathText: \sum and \prod used the wrong symbol in XITS-mode
...
NEW: JKQTMathText: \limits and \nolimits work as in LaTeX now (before it was simply removed and the functionality implemented for a fixed list of symbols)
remove/breaking: JKQTMathText: \v[a-zA-Z] and shorthand for \vec{a-zA-Z} was removed
improvement: improved typesetting of sub-/supercripts, especially for large math operators and braces
2022-06-26 00:28:49 +02:00
jkriege2
f49714ecb6
JKQTMathText: improved quotation mark symbols
2022-06-20 12:21:38 +02:00
jkriege2
48a9a45af9
JKQTMathText code/documentation cleanup
2022-06-20 12:18:19 +02:00
jkriege2
d8a3539844
bugfix: didn't compile with Qt < 6.0
2022-06-20 09:53:28 +02:00
jkriege2
f9c060af68
FIXED: JKQTMathText: symbol spacing in math mode (and text mode)
2022-06-19 23:34:25 +02:00
jkriege2
03c59d3507
NEW: LaTeX-Parser simplifies parse-tree to increase speed of execution
2022-06-19 22:36:38 +02:00
jkriege2
d885f7f00a
NEW: JKQTMathText: LaTeX-Parser understands optional instruction parameters in [...] now
2022-06-19 15:11:06 +02:00
jkriege2
5c255712ce
JKQTMathTextBraceNode uses an enum to reference brace types, not a QStrig
2022-06-09 21:37:06 +02:00
jkriege2
c8ef57bb66
JKQTMathText: moved some node-specific enums into the node classes
2022-06-09 20:32:16 +02:00
jkriege2
7b83640a19
moved JKQTMathText images to their own subdirectory
2022-06-09 14:42:25 +02:00
jkriege2
992cad7ff3
MODIFIED: brace node now calculates the extension of the child height above or below the strikeoutPos, in order to center braces around the strikeoutPos
...
fixed: strikeoutPos was not correctly calculated in sub-/superscript node
NEW: JKQTMathText shows strikeoutPos when drawing Debug-Boxes
2022-06-09 14:31:27 +02:00
jkriege2
143ae54ae8
JKQTMathText: modified text-positions of \sfrac and \stfrac
2022-06-09 11:32:57 +02:00
jkriege2
1a8de1bb2f
- NEW: reworked node class tree: inserted base-class nodes for single-child, dual-child!
...
- NEW: improved frac-rendering: font-scaling takes nesting-level into account, overall-rendering, sizes, if a brace surrounds a frac, the heights are equal above and below to center the brace ...
2022-06-08 23:52:22 +02:00
jkriege2
94ca27aed0
NEW/BREAKING: restructured JKQTMathText: broke up single, large CPP-file into several smaller files
...
added more examples to jkqtmathtext_test
2022-06-08 15:38:26 +02:00
jkriege2
b0f8a2d0b9
- NEW: JKQTMathText supports new decoration instructions: \cancel, \xcancel, \bcancel, \sout, \ocirc, \widetilde, \widehat, \breve</li>
...
- NEW: JKQTMathText: reworked drawing of decorations: improved appearance and positioning!
2022-06-06 23:24:05 +02:00
jkriege2
0f0c03772e
NEW: JKQTMathText supports new instructions: \cancel, \xcancel, \bcancel, \sout
2022-06-06 14:16:50 +02:00
jkriege2
d6b6a71395
fixes/improvements: JKQTMathText renders several LaTeX strings better (simple braces in math mode, +-*... as symbols with proper sizes in math mode, added some missing instruction aliases, improved size of \vec and \hat, corrrected fonts usage for mathrm,
2022-06-03 13:33:18 +02:00
jkriege2
285814f2e6
fixed: JKQTMathText added a little whitespace before and after the LaTeX-string. This was removed as it disturbed the layout of text in plots
2022-06-02 23:24:41 +02:00
jkriege2
f33838f187
added debug-feature to show boxes around text in the plot
2022-06-02 23:05:58 +02:00
jkriege2
d3b74875db
improved Qt6-compatibility by getting rid of deprecated warnings
2022-06-02 22:31:39 +02:00
jkriege2
bf21d53149
improved high-dpr-support in JKQTMathText
2022-06-02 22:17:38 +02:00
jkriege2
fd2ae94c6c
got rid of deprecated warnings when compiling with Qt6
2022-06-02 21:44:58 +02:00
jkriege2
5bb0235b33
added QIcon-generating functions to jkqtcommon
2022-06-02 21:21:51 +02:00
jkriege2
03497b6c31
changed JKQTPColorDerivationMode from an ENUM to a STRUCT, which extends its capabilities significantly
2022-06-02 21:21:17 +02:00
jkriege2
cf27b77b6b
added JKQTMathTextFontSpecifier struct that describes a font and a math companion
2022-06-02 21:19:16 +02:00
jkriege2
5fae11472c
added seaborn style
2022-05-23 22:44:58 +02:00
jkriege2
b756cb91e6
improved/fixed styling system: axis styles for colorbars were not properly taken from style objects + corrected some inaccurate drawing by using QRectF instead of QRect
2022-05-23 22:41:57 +02:00
jkriege2
667ffeb3f3
updated icons with high-dpi versions
2022-05-16 22:33:31 +02:00
jkriege2
fa02055b9d
bugfixed string conversion method
2022-05-16 22:32:56 +02:00
jkriege2
145da4b191
improved icons: several style changes, all SVGs available, added high-dpi versions
2022-05-16 21:55:58 +02:00
jkriege2
ae5713ea68
implemented feature request #69 : Show data tooltip on MouseMove by adding general actions that can be executed on a mouse move operation, when no mouse button is pressed, modification by keyboard modifiers is possible though
2022-05-15 14:15:15 +02:00
jkriege2
94f80510ec
fixed issue described in PR #62 : Fix custom labels draw, because giving exactly two label-strings did not display all of them, thanks to github_user:FalsinSoft
2022-05-14 22:59:10 +02:00
jkriege2
a80ea3a24a
fixed issue #70 : typo in lib/jkqtplotter/CMakeLists.txt
2022-05-13 10:45:20 +02:00
jkriege2
1a9593409a
fixed QT6 compatibility
2022-05-12 10:35:05 +02:00
jkriege2
f475caddc1
fixed typo
2022-05-11 23:03:33 +02:00
jkriege2
ee2477a1f6
implemented wiggle plots (feature request #68 )
2022-05-11 22:55:23 +02:00
jkriege2
d45083ee9b
moved include-guards to the head of the headers
2022-04-24 22:07:39 +02:00
jkriege2
c6aa942486
improved/fixed qmake-build scripts fot Qt6
2022-04-24 22:07:16 +02:00
jkriege2
b8088ccc69
improved/bugfixed doxygen documentation
2022-04-24 13:23:59 +02:00
jkriege2
e784a6d89f
fixed doxygen comment
2022-04-22 22:19:24 +02:00
jkriege2
b8f1ac7edb
fix for Qt < 5.14
2022-04-22 20:53:54 +02:00
jkriege2
687c23a654
bugfixes for QT5 build after QT6 modifications
2022-04-22 15:20:58 +02:00
jkriege2
0a5fa42470
more required changes for Qt6 compatibility
2022-04-22 13:27:31 +02:00
jkriege2
6bcb0b9a9f
Merge branch 'master' into add_qt6_compatibility
2022-04-21 21:28:49 +02:00
jkriege2
fbbc814331
using automatic memory management instead of local malloc()/free() pairs
2022-04-21 21:25:37 +02:00
jkriege2
3357ca4240
fixed issue #56 : exponent-labels were 0 below ~1e-16 ... reason was using <std::numeric_limits<double>::epsilon() instead of <std::numeric_limits<double>::min() for checking close to zero
2022-04-21 21:24:45 +02:00
jkriege2
b4eda85bfc
fixed two possible int-overflows
2022-04-21 13:59:49 +02:00
jkriege2
a24ad0b597
fixed bug #49 : naming of sections in plot-styling INI-files
2022-04-21 13:51:50 +02:00
jkriege2
ad3a26a272
fixed bug #50 JKQtPlotter::clearAllRegisteredMouseDoubleClickActions(), JKQtPlotter::clearAllMouseWheelActions(), JKQtPlotter::clearAllRegisteredMouseDragActions() didn't really deactivate all actions
2022-04-21 13:33:22 +02:00
jkriege2
62adbd8036
Merge branch 'master' into add_qt6_compatibility
2022-04-21 12:15:15 +02:00
jkriege2
cc6a87c6d2
fixed bug #48 some users could not #include <QPrintPreviewWidget>
2022-04-21 12:13:23 +02:00
jkriege2
4ded1a2028
first round of Qt6 compatibility changes
2022-04-21 10:57:24 +02:00
jkriege2
8835febb96
modified CMakeLists.txt to match Qt6
2022-04-18 23:10:05 +02:00
jkriege2
052fc27cfb
replaced some deprecated constructs for Qt 5.15
2022-04-18 22:45:02 +02:00
jkriege2
5abac3b3db
fixed CMakeLists.txt cmake-version to work on appveyor Linux build
2022-04-18 22:42:18 +02:00
jkriege2
725d19d616
using Qt's dllexport/import-macros
2022-04-18 22:00:41 +02:00
jkriege2
d51d47b2f4
requiring higher cmake-version, due to CMP0076
...
using CMAKE_CURRENT_LIST_DIR instead of CMAKE_CURRENT_SOURCE_DIR
2022-04-18 22:00:31 +02:00
jkriege2
2697e66e31
CMakeLists.txt: using target_sources() and making CPP-files private!
2022-04-18 14:19:35 +02:00
Jan W. Krieger
8f184791cc
Merge pull request #55 from akenmorris/high_dpi
...
Enable high-dpi support for plots
2022-04-15 22:55:35 +02:00
Alan Morris
6f487c2c24
Enable high-dpi support for plots.
2021-08-18 16:32:48 -06:00
Stephan Oostveen
e7ca3db4de
Bug: JKMathParser exception return local variable
...
Fix the what() function which returned a pointer to a local variable.
2021-03-23 21:01:27 +01:00
jkriege2
fc7622e901
several minor bugfixes to QMake build system
2020-10-19 16:05:18 +02:00
Patrick Stewart
872b31bc2d
Add missing #include
2020-10-02 14:41:42 +01:00
Patrick Stewart
2e85504d89
Support Qt in namespace
2020-10-02 14:41:26 +01:00
Patrick Stewart
29e970ed6f
Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
...
This means that the project can be used with CMake fetchcontent / add_subdriectory
2020-10-02 14:40:47 +01:00
jkriege2
75c7e3421b
reworked grid-style representation
2020-09-29 13:19:04 +02:00
jkriege2
58403f8905
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!
2020-09-28 19:24:17 +02:00
jkriege2
48ec6060ab
* additional JKQTPColorDerivationMode
...
* bugfixes for Boxplots
* style improvements
2020-09-28 15:37:45 +02:00
jkriege2
a371dc86a5
updated predefined styles to updated styling system
2020-09-28 12:46:58 +02:00
jkriege2
534745229d
several bugfixes for reading styles, improved default styling for graphs (filled, barcharts, ...)
2020-09-27 17:16:18 +02:00
jkriege2
fc321f027b
- breaking: geometric elements constructor: removed all styling properties, added setStyle()-functions to replace them. This is necessary to better work with the extended Styling system
...
- breaking: extended styling system for graphs
2020-09-26 15:58:58 +02:00
jkriege2
a65a713ea6
improved/breaking change: reworked class hierarchy of violin plots
2020-09-21 13:53:33 +02:00
jkriege2
0faa51c9f5
comment formatting fix
2020-09-21 13:52:13 +02:00
jkriege2
40e4b30c45
improved/breaking change: reworked class hierarchy of boxplots
2020-09-21 13:40:38 +02:00
jkriege2
f368855076
renamed JKQTPPlotObject->JKQTPGeometricPlotElement and added new base class JKQTPPlotAnnotationElement
2020-09-21 13:15:57 +02:00
jkriege2
f4767072a4
- improved/breaking change: reworked class hierarchy of range plot elements (JKQTPVerticalRange and JKQTPHorizontalRange)
...
- improved their documentation
2020-09-19 19:59:33 +02:00
jkriege2
9e48a2e59e
improved/breaking change: reworked class hierarchy of filled line graphs
2020-09-19 19:17:35 +02:00
jkriege2
d638ff1e9c
improved/breaking change: reworked class hierarchy of special line (step) graphs
2020-09-19 19:06:01 +02:00
jkriege2
abe1c655ba
improved code (removed code repeats by using getIndexRange(), using const where appropriate)
2020-09-19 15:39:02 +02:00
jkriege2
7e425e7bb5
reworked class hierarchy of impulse graphs
2020-09-19 15:21:33 +02:00
jkriege2
d57da36a99
moved set/getBaseline() to a special base graph class JKQTPXYBaselineGraph
2020-09-19 15:08:32 +02:00
jkriege2
34fa59ebf4
using new JKQTPGraphLineAndFillStyleMixin where appropriate
2020-09-19 14:55:46 +02:00
jkriege2
6875e0ae6c
- improved/breaking change: reworked class hierarchy of range charts.
...
- new: added JKQTPFilledHorizontalRangeGraph, complementing JKQTPFilledVerticalRangeGraph
2020-09-19 14:41:53 +02:00
jkriege2
8cee70bdca
breaking: made more functions and function parameters const
2020-09-18 22:03:12 +02:00
jkriege2
3105d88740
added base graphs für X-Y-Y2- and X-X2-Y-datasets for X- and Y-Range plots
2020-09-18 19:35:53 +02:00
jkriege2
b112f9f512
breaking: in graph Base-Classes: promoted several setters to slots, added Q_PROPERTY- and Q_ENUM-declarations, Docu cleanup
2020-09-18 19:11:50 +02:00
jkriege2
eb9a1d5a92
documentation fixed
2020-09-18 12:24:12 +02:00
jkriege2
9dbfd6e173
reworked class hierarchy of bar charts
2020-09-17 16:59:57 +02:00
jkriege2
9a3f321f66
improved and bugfixed handling of aspectRatio and its documentation
2020-09-11 23:21:55 +02:00
jkriege2
d2b4e07c94
added JPQTPlotter signal, when widget was resized
2020-09-11 13:48:07 +02:00
jkriege2
d6e6b1d53b
reverted: - bugfix: JKQTPColumnConstIterator and JKQTPColumnIterator: getImagePositionX() and getImagePositionY() were switched
2020-09-11 13:15:12 +02:00
jkriege2
a1c4f0c0d2
- added several new copy/set-functions to JKQTPDatastore
...
- bugfix: JKQTPColumnConstIterator and JKQTPColumnIterator: getImagePositionX() and getImagePositionY() were switched
2020-09-11 12:39:10 +02:00
jkriege2
ff373236d4
renamed JKQTPColorPaletteStyleAndToolsMixin::setPalette() -> JKQTPColorPaletteStyleAndToolsMixin::setColorPalette()
2020-09-11 12:14:51 +02:00
jkriege2
e9ca874f3b
made some functions of JKQTPCoordinateAxis public and improved documentation
2020-09-11 12:09:11 +02:00
jkriege2
1162a80cb4
added missing JKQTPlotter::getDatastore() with const-modifier
2020-09-11 12:06:27 +02:00
jkriege2
ebf034710b
bugfix: parsed functions did not work properly
2020-09-09 11:45:33 +02:00
jkriege2
ba856b594f
removed/breaking change: removed the overlay elements (derived from JKQTPOverlayElement), which were not very well set up and are more confusing than useful.
2020-09-09 11:26:04 +02:00
jkriege2
95d885bc2c
- bugfix: improved handling of DRAGZOOM-UserAction for log-log plots
...
- code (style) improvements
2020-09-08 20:15:33 +02:00
jkriege2
f77bc97ca5
- cleanup of class-hierarchy of evaluated functions
...
- added slots for several properties of evaluated functions
- updated examples
2020-09-07 20:58:20 +02:00
jkriege2
414e12920e
- added further base-class JKQTPEvaluatedFunctionWithParamsGraphBase, which extends JKQTPEvaluatedFunctionGraphBase with parameters
...
- modified plot-function with parameters, as the old unsafe way of giving a void* for parameters is no longer necessary with C++-lambdas and std::bind()
2020-09-05 13:47:46 +02:00
jkriege2
dcdee469fe
rename JKQTPFunctionLineGraphBase -> JKQTPEvaluatedFunctionGraphBase
2020-09-05 13:16:26 +02:00
jkriege2
29ee1aa376
created common base class JKQTPFunctionLineGraphBase for all graphs that display evaluated functions
2020-09-05 13:14:46 +02:00
jkriege2
48a24a85d0
JKQTPXFunctionLineGraph: further simplification
2020-09-05 12:50:46 +02:00
jkriege2
8c0c8bf62e
simplification/unification: JKQTPXFunctionLineGraph and JKQTPYFunctionLineGraph now use JKQTPAdaptiveFunctionGraphEvaluator to generate sample points
2020-09-05 12:44:02 +02:00
jkriege2
c57c672f78
new: a new graph class JKQTPXYFunctionLineGraph draws parametric 2D curves (f(t) -> [x,y])
2020-09-04 23:47:03 +02:00
jkriege2
33a9cb5b2d
bugfix: straight lines in pie and chord were not drawn as curve in DrawMode=DrawAsMathematicalCurve
2020-09-03 23:28:48 +02:00
jkriege2
279ef7880a
- improved: geometric objects now use an adaptive drawing algorithm to represent curves (before e.g. ellipses were always separated into a fixed number of line-segments)
...
- improved: constructors and access functions for several geometric objects (e.g. more constructors, additional functions to retrieve parameters in diferent forms, iterators for polygons, ...)
- 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
2020-09-03 23:08:52 +02:00
jkriege2
c02ebf817b
added function to check whether axis is linear
2020-09-03 22:56:38 +02:00
jkriege2
87755ce515
diverse code improvements, increased copyright year to 2020
2020-08-26 12:58:23 +02:00
jkriege2
5ad9ebdcbb
code styling improvements
2020-08-26 11:43:44 +02:00
jkriege2
696ce11514
improved code style
2020-08-26 11:00:25 +02:00
jkriege2
0a634aabd0
reorganization: split jkqtpgeometric.h/.cpp into several smaller files that group the geomtric shapes by type
2020-08-26 10:36:07 +02:00
jkriege2
35000a8e38
some fixes to documentation and geometry example
2020-08-23 13:58:47 +02:00
jkriege2
4e1c09c24b
improved arrows in geometric elements:
...
- JKQTPGeoLine, JKQTPGeoPolyLines and JKQTPGeoInfiniteLine support decorators
- improved decorator drawing
- more decorator types
- improved example geometry
- added specific example geo_arrows
- improved documentation
- code cleanup
2020-08-23 13:13:53 +02:00
jkriege2
9cba3fec25
bugfix: removed compiler warning
2020-08-21 18:40:30 +02:00
jkriege2
b3f4c64564
added geometric plot JKQTPGeoArrow object to draw arrows
2020-08-21 18:31:58 +02:00
jkriege2
139b0f5841
regained compatibility with pre 5.11 QT-Versions
2020-08-15 09:16:15 +02:00
jkriege2
7e9bad29b4
fix for issue #45 :
...
- for Qt 5.15: added missing #include statements that became necessary since Qt 5.15
- for Qt 5.15: fixed use of several deprecated functions
- for Qt 5.15/6: removed usage of QMatrix
2020-08-14 14:12:59 +02:00
jkriege2
eb7fd1d524
some bugfixes for VStudio NOMINMAX-problem ...
2020-06-29 08:01:40 +02:00
jkriege2
52d3349199
improvements in CMake setup:
...
- removed more global settings (these are now target-specific)
- exporting now Config.cmake, which contains find_package(Qt) and loads a separate Targets.cmake
2020-06-28 15:53:26 +02:00
jkriege2
04219ec6d9
fixed issue #37 : installing README/LICENSE files now to $PREFIX/doc/JKQtPlotter, instead of $PREFIX/doc/
2020-06-28 09:53:33 +02:00
jkriege2
f6505e35fc
fixed issue #41 : "Build error when JKQtPlotter_BUILD_INCLUDE_XITS_FONTS set to OFF", code tried to use XITS-ressources, which were not there oif option is switched off. --> solved by adding optional private preprocessor definition
2020-06-28 09:49:20 +02:00
jkriege2
b22b4ca935
Fixed Bug #43 : jkqtp_format() had undefined behaviour, because va_start was called with a ref-parameter, which does not work. Now there are 4 overloaded template variants. See https://github.com/jkriege2/JKQtPlotter/issues/43
2020-06-27 14:35:45 +02:00
Dan Timson
397c72049f
bugfix for reading style names
2020-02-24 17:41:16 +00:00
jkriege2
d9086e99d2
bugfix for https://github.com/jkriege2/JKQtPlotter/issues/38 : BUFFER Overflow due to access behind LUT-size
2020-01-06 18:17:41 +01:00
Jan W. Krieger
ee4262d14c
Merge pull request #34 from certik/log_zero2
...
Skip drawing the line for negative values in log plots
2019-11-29 07:27:50 +01:00
Ondřej Čertík
65c23c9669
Use linesP and vec_linesP names
2019-11-28 20:34:29 -07:00
Ondřej Čertík
ae722e8c33
Use a vector of QPolygonF directly
2019-11-28 20:32:38 -07:00
Ondřej Čertík
10edc6b0ac
Skip drawing the line for negative values
2019-11-26 13:40:05 -07:00
jkriege2
2ab5b099d8
fixed typo which leads to Linux build fails!
2019-11-24 13:05:57 +01:00
jkriege2
6c058f73ed
improved linewidth calculation in JKQTMathText for SQRT, arrows, ...
2019-11-24 12:53:58 +01:00
jkriege2
97a1780b3d
- performance issue fixed in JKQTMathText (the constructor iterated over all available fonts, which can be very slow when many fonts are installed (1-2ms/font, i.e. several seconds for thousands of fonts!), fixes https://github.com/jkriege2/JKQtPlotter/issues/31
...
- fixed some compiler warnings for obsolete functions in newer Qt (QFontMetrics::width())
2019-11-24 12:48:20 +01:00
jkriege2
10965843da
JKQTPHighResTimer now uses C++11 chrono lib as fallback
2019-11-24 12:21:06 +01:00
jkriege2
9a667b9c22
several compiler warnings fixed
2019-11-24 12:20:43 +01:00
jkriege2
54f7dba0bf
bugfix: removed some unneeded functions in mathparser
2019-11-24 10:52:24 +01:00
jkriege2
56660e2f4b
fixed several compiler warnings (mostly Visual Studio): clean-up of use of math constants M_PI ... and j0()/j1()/...-functions etc.
2019-11-24 10:42:44 +01:00
jkriege2
29b1c5aa37
solved link error with Visual Studio (upper/lower case mismatch in DEFINE was 'JKQtPlotter_LIB_...' but should be 'JKQTPLOTTER_LIB_...')
2019-11-24 10:42:23 +01:00
jkriege2
4c9db88a2e
some more fixes do MSVC build
2019-11-21 21:42:10 +01:00
jkriege2
6d8139e996
add missing compiler flag
2019-11-21 08:01:17 +01:00
jkriege2
307f477626
fix issue #19 : got rid of jkqtpArrayMalloc(), jkqtpArrayCalloc(), jkqtpArrayFree() (which were a remenant of QuickFit 3 and not really portable or useful)
2019-11-18 16:15:49 +01:00
jkriege2
f3fa587541
reworked CMake build system ... now JKQT...Config.cmake-files are written into the correct directory
2019-11-18 15:59:06 +01:00
jkriege2
d494407e76
fixed some compiler warnings (qSort is deprecated ... using std::sort instead)
2019-11-18 13:08:42 +01:00
jkriege2
61d3108fb8
removed some unneeded debug-messages
2019-11-18 08:15:07 +01:00
jkriege2
5575d1fa4e
some bugfixes in math rendering (e.g. problems with greek letters)
...
fixed some compiler warnings
2019-11-16 15:02:48 +01:00
jkriege2
4e890b9cb3
updated XITS to current master
2019-11-16 14:16:45 +01:00
jkriege2
57e8fb3362
added CImg interface (header-only) + examples
...
some corrections for OpenCV examples
2019-11-16 13:50:43 +01:00
jkriege2
e087f40870
documentation improvement for OpenCV + minor fixes
2019-11-16 11:35:59 +01:00
jkriege2
528f6fe537
- added post-build deploy for OpenCV and Qt-DLLs (on windows)
...
- checked OpenCV-examples and improved OpenCV-copy-tool (now copies as an image column, as appropriate!)
2019-11-10 15:35:07 +01:00
jkriege2
92c1851c8c
bugfix: OpenCV-interface used hidden function
2019-10-17 23:49:50 +02:00
Mikael
abc32875f6
qt5.9 support
2019-10-17 11:32:23 +02:00
Dan Timson
24af63688b
corrections to allow palettes to be drawn correctly
2019-09-16 18:09:17 +01:00
Dan Timson
3a1b536c58
Minor documentation clarifications
2019-09-16 18:05:40 +01:00
Vilas Chitrakaran
95ffeadcf7
compiles for Qt5 in Kde Neon 5.16.4
2019-08-23 13:21:38 +01:00
jkriege2
686fb1eeb1
using mix-in class JKQTPColorPaletteWithModifierStyleAndToolsMixin now also in JKQTPMathImage ...
2019-07-31 22:10:26 +02:00
jkriege2
4347d27c04
* reworked color-palette-system:
...
1. added several new (JKQTPMathImageBone, JKQTPMathImageCool, JKQTPMathImageCopper, JKQTPMathImageAutumn, JKQTPMathImageSeismic, JKQTPMathImageTerrain, JKQTPMathImageViridis, JKQTPMathImageMagma, JKQTPMathImageInferno, JKQTPMathImagePlasma)
2. reworked LUT-types (now a QVector, instead of a C-array, suing malloc)
3. reworked available functions to build LUTs (cleanup, more options, clearer names)
4. added functions to load palettes from files
5. Improved documentation
* added example for user-controlled color palettes
2019-07-28 16:30:50 +02:00
jkriege2
bbfcec74ab
JKQTMathText: improved startup-speed by doing font searches only once per program start (via static variables)
2019-06-30 17:59:04 +02:00
jkriege2
01b6d7cee6
JKQTMathText: improved font-handling system + new fraktur and caligraphic, as well as special math sans/serif fonts-classes
2019-06-30 17:34:41 +02:00
jkriege2
a44d570bfa
added export of XITS license files
2019-06-22 16:55:18 +02:00
jkriege2
933d374533
+ added license/readme output to INSTALL-target in CMake
...
+ added example demonstrating how to link against a CMake-build of JKQTPlotter
+ improved documentation
2019-06-22 16:42:42 +02:00
jkriege2
34b31812ba
+ bugfixed DLL-export when building shared libraries
...
+ CMAKE now properly adds the Build-type when building libraries
+ removed some more compiler warning
2019-06-22 14:21:32 +02:00
jkriege2
77d799a742
- removed many compiler warnings
...
- enabled compiler-warnings in CMake-build
- several bugfixes (also to appveyor.yml)
- removed some function from JKQTBasePlotter, which were (messy) shortcuts to adding graphs
2019-06-21 21:48:14 +02:00
jkriege2
fb5b497356
- several bugfixes (doc etz.)
...
- decoration of library names in CMake-builds
- renamed advancedlineandfillstyling to advplotstyling to solve problems with too long filenames
2019-06-21 13:44:49 +02:00
jkriege2
f5a49d6d3b
bugfixed compile errors
2019-06-21 10:46:13 +02:00
jkriege2
7311948d53
using CMake now to build examples
...
restructuring/massive renaming to make this possible
2019-06-20 22:24:47 +02:00
jkriege2
fae6b28a58
further reorganizations of code
2019-06-20 16:25:29 +02:00
jkriege2
60999478f8
added CMake build scripts for libraries + some necessary reorganizations
2019-06-20 15:18:58 +02:00
jkriege2
a390030db4
Merge branch 'master' into cmake_build
2019-06-20 10:28:53 +02:00
jkriege2
d9e9a5aa67
added adaptor functions for violin plots
2019-06-18 19:36:54 +02:00
jkriege2
f5abce1e6d
added violin plots and an example demonstrating their usage/generation from random data
2019-06-16 19:19:52 +02:00
jkriege2
1363cf7012
added function to JKQTPPlotElement that allow to transform a complete vector of x- or y-values in one call
2019-06-16 19:15:07 +02:00
jkriege2
56d59b1760
bugfixed auto-ranged KDE to include the minimum and maximum value in the output
2019-06-16 19:14:09 +02:00
jkriege2
c8395f2ada
JKQTPSingleColumnSymbolsGraph: added Rug-Plot
2019-06-16 13:27:40 +02:00
jkriege2
f96e262371
JKQTPlotter/JKQTBasePlotter: added functions to set properties of all grid lines (x+y axis) together
2019-06-16 13:27:02 +02:00
jkriege2
9e4210c823
JKQTPDatastore: added functions to check for existence of a column and to retreive the data of a column as a QVector<double>
2019-06-16 12:54:56 +02:00
jkriege2
baab796541
bugfixes to documentation
2019-06-13 13:00:27 +02:00
jkriege2
2b5a30a668
statistics library: added functions for grouped statistics and adaptors for them
...
added example for grouped statistics
some improvements to documentation
2019-06-13 10:29:12 +02:00
jkriege2
d013530d81
bugfix: JKQTPBoxplotHorizontalGraph notch was not drawn correctly
2019-06-13 09:29:10 +02:00
jkriege2
6348de3d44
added appendToColumns() methods that allow to add values to several columns simultaneously
2019-06-12 13:06:53 +02:00
jkriege2
8aaf806ab5
added shortcut setShowZeroAxes() to JKQTBasePlotter and JKQTPlotter
2019-06-12 13:00:28 +02:00
jkriege2
6d95c5c64c
split statistics library by topic into several .H/.CPP-pairs
2019-06-12 12:58:47 +02:00
jkriege2
8abb2492fa
statistics library: added functions for 2D histograms and 2D kernel density estimates
...
statistics library: added adaptor functions for 2D histograms and 2D kernel density estimates
added examples for the two above
2019-06-11 18:06:03 +02:00
jkriege2
9ff9076e63
moved basic polynomial functions to jkqtpmathtools.h
...
renamed jkqtptoolsdebugging.h to jkqtpdebuggingtools.h
added jkqtpstatWeightedCoefficientOfDetermination()
2019-06-02 15:39:10 +02:00
jkriege2
ad38ac47f2
added weighted sum of deviations (chi-square) and coefficient of determination (R^2) to statistics library
...
added log regression model to statistics library
added output of R^2 and chi^2 to regression adaptors (output in graph label)
bugfixed some documentation typos
2019-06-02 14:17:49 +02:00
jkriege2
09237a3d55
bugfixed doxygen docu
2019-06-02 12:09:05 +02:00
jkriege2
2d0b1e7935
added regression, IRLS robust regression, weighted regression and polynomial fitting/evaluation to statistics library
...
added example for regression, IRLS robust regression, weighted regression and polynomial fitting
2019-06-01 18:15:04 +02:00
jkriege2
199e8493fe
ruler-tool shows slope
2019-06-01 14:02:35 +02:00
jkriege2
6fe42748ed
improvements to iterator interface (full random access iterators, erase-remove-idion)
...
added specific example for the iterator interface
2019-05-31 14:51:01 +02:00
jkriege2
c56b02998f
improvements to documentation structure
2019-05-30 11:52:48 +02:00
jkriege2
fdc4a1deb9
bugfixes (added missing DEFINE-compiler-flags for Visual C++, doxygen warnings/errors removed)
2019-05-30 11:19:56 +02:00
jkriege2
ff489e9fac
bugfixes
2019-05-30 09:48:51 +02:00
jkriege2
356cc34349
new: Statistics library with functions to calculate histograms, regression, kernel density estimates, ... including a new example
...
new: iterator interface and improved documentation for JKQTPDatastore
reorganization of library (better separation of common code in jkqtpcommon and other code e.g. in jkqtplotter or jkqtmathtext)
2019-05-29 22:40:02 +02:00
jkriege2
212233aed6
Split of jkqtcommon/jkqtptools.h into several smaller units
2019-05-23 07:38:07 +02:00
jkriege2
0daa30cd45
improvements to documentation of image plots
...
better function hiding in derived image plot classes that use columns
2019-05-19 17:24:02 +02:00
jkriege2
5a4a778faf
improved contour plots + added example for contour plots
...
split contour plot into two variant, one for C-array-data and one for image column data
improved doxygen annotation
2019-05-19 15:22:56 +02:00
jkriege2
028f192e7b
image size automatically determined from JKQTPDatastore
2019-05-18 13:31:07 +02:00
jkriege2
04aaa01333
first test CMakeLists.txt
2019-05-18 13:23:38 +02:00
jkriege2
5f62722d38
code reorganization
2019-05-18 13:22:46 +02:00
jkriege2
2b1649c7b7
added slanted fractions to JKQTMathText + improved documentation
2019-05-18 11:42:35 +02:00
jkriege2
ad48bf1873
improvements to documentation
2019-05-18 10:49:49 +02:00
jkriege2
8edab9865e
added JKQTPDatastore::appendFromContainerToColumn() and JKQTPDatastore::appendToColumn() that extend columns with additional rows (and move the to internal storage implicitly)
2019-05-17 08:59:33 +02:00
jkriege2
56e54baee9
new: rework/extension of the JKQTPDatastore interface (WIP)
...
new: Example simpletest_datastore, which demonstrates the extended interface of JKQTPDatastore
2019-05-16 21:28:15 +02:00
jkriege2
34366a42a0
several new plot symbols
2019-05-12 17:35:08 +02:00
jkriege2
20352285ca
new: improved styling options of boxplots (options to style many more elements of the plot), moved JKQTPGraphBoxplotStyleMixin to its own file
...
new: notched boxplots
new: example for styling boxplots
2019-05-11 15:56:11 +02:00
jkriege2
c873041d93
update: allow to style median-line of boxplots independently
2019-05-05 19:58:52 +02:00
jkriege2
67d23150f2
new: user-interaction tool that shows coordinates of data points near the current mouse position (when mouse is dragged, while mouse button is pressed)
...
new: user-interaction tool that measures distances and angles when mouse is dragged, while mouse button is pressed)
update: reworked error indicator base classes and styling settings
update: improved boxplot styling with a separate full-featured pen for the whiskers
2019-05-05 19:31:20 +02:00
jkriege2
171f1e6274
removed compiler warning
2019-05-01 14:58:19 +02:00
jkriege2
f710048f49
clean-up of special context menu code + added documentation
2019-05-01 12:46:17 +02:00
jkriege2
3dc56510e9
changed backgroundColor-properties for plot/widget/key to backgroundBrush, modified example to demonstrate this
2019-04-24 19:33:51 +02:00
jkriege2
1064050b65
added example for advanced filling and line options
2019-04-23 23:50:06 +02:00
jkriege2
52cd2dc2d8
try to fix Visual Studio compile error
2019-04-22 18:35:08 +02:00
jkriege2
62fc116296
added Styling-Mix-In for boxplots
2019-04-22 17:20:33 +02:00
jkriege2
a67975e680
- major rework of graph styling (now using mix-in classes)
...
- some reorganizations into different files
- additional options for graph filling (color gradients, textures, ...) as provided by QBrush
- PREPARATIONS: added a general feature to JKQTPPlotElement which allows to show a graph in a highlighted state (if supported by the derived graph class!)
- JKQTPXYParametrizedScatterGraph: added functors to transform column values into symbol type+size and line-width to give even more control
- JKQTPStepHorizontalGraph has been renamed to JKQTPSpecialLineHorizontalGraph (vertical variants also) and have gained additional features (baseline for filling and drawing of symbols)
- filled curve graphs (e.g. JKQTPSpecialLineHorizontalGraph) are now merely a specializedly initialized JKQTPSpecialLineHorizontalGraph
2019-04-22 13:27:50 +02:00
jkriege2
14d4857670
improvements to JKQtMathText when rendering non-XITS unicode fonts
2019-03-06 23:19:05 +01:00
Jan W. Krieger
2400245e94
- reworked how MTsubscriptNode/MTsuperscriptNode operate, also when the previous node was a brace (i.e. special shifts of sub/superscript)
...
- improved documentation
- fixed a bug in \overbrace
2019-02-12 09:32:20 +01:00
jkriege2
3050debd16
- RGB-image plots now work properly with inverted axes (image is inverted, befor image was not shown at all)
...
- added example for simple RGB math image plot with RGB/CMY-color mapping
- fixed some of the OpenCV examples (improved QMake-project files)
2019-02-09 22:17:01 +01:00
jkriege2
8ce6987315
minor fixes
2019-02-09 18:46:12 +01:00
jkriege2
69ad2a0182
- added styling system for JKQTPlotter (+example app)
...
- improved documentation
- changed: using static const variables instead of \c #define for fixed default values (e.g. JKQTPImageTools::LUTSIZE, JKQTPImageTools::PALETTE_ICON_WIDTH, JKQTPlotterDrawinTools::ABS_MIN_LINEWIDTH, JKQTMathText::ABS_MIN_LINEWIDTH ...)
- new: added debugging option, which surrounds different regions with visible rectangles (JKQTBasePlotter::enableDebugShowRegionBoxes() )
- fixed: colorbars at top were positioned over the plot label
- new: frames (plot viewport, key/legend ...) may be rounded off at the corners
- new: diverse new styling options (default font name/size ...)
- speed improvements to JKQTMathText::useSTIX()
2019-02-09 12:43:12 +01:00
jkriege2
6082010c98
finished mouse interaction example + improved documentation
2019-02-04 13:15:56 +01:00
jkriege2
08932f2863
improved documentation
2019-02-03 20:25:25 +01:00
jkriege2
4a63afc709
- fixed zoomin/synchronized graphs, which was broken by former update to user-interaction
...
- improved documentation & HTML-sytle
- removed datarange-facilities (not really useful!)
2019-02-03 14:08:16 +01:00
Jan W. Krieger
73bf9edd95
improved documentation
2019-01-29 12:06:06 +01:00
Jan W. Krieger
c5b9504189
finished rework of user-interaction API for the mouse
2019-01-28 17:05:03 +01:00
Jan W. Krieger
17a4473e4f
reworked how context-menus are specified/activated
...
prepared for future reworks
some renames
2019-01-28 10:46:38 +01:00
Jan W. Krieger
75d8fc8314
reworked the functions that allow to specify how JKQTPlotter reacts to mouse single-click actions
2019-01-27 23:24:12 +01:00
jkriege2
dabc061de9
implemented panning the plot with the mouse
...
fixed: switchability of zoomByMouseWheel
fixed: 0 on axis sometimes shown as 10^{-17}...
2019-01-27 08:30:59 +01:00
jkriege2
c74e87ad31
improved user-interactions (& their example)
2019-01-26 20:12:54 +01:00
jkriege2
0e2237e92f
- more refactorings to modernize C++
...
- fixed JKQTPColumnMathImage with modifiers
- improved documentation
- make use of link_prl/create_prl in QMake projects (see http://doc.qt.io/qt-5/qmake-advanced-usage.html )
2019-01-26 18:00:42 +01:00