Commit Graph

162 Commits

Author SHA1 Message Date
jkriege2
3132eb0102 refactorings, code improvements, no functional changes 2022-11-03 15:48:48 +01:00
jkriege2
8c36ce2196 NEW: barcharts and impulse graphs may now draw their baseline as stylable line (default: off) 2022-10-31 20:34:01 +01:00
jkriege2
94fcd02913 docfix 2022-10-30 21:52:30 +01:00
jkriege2
972bc6c1e0 NEW: you can provide a custom draw functor to barcharts to completely customize their look 2022-10-28 21:48:42 +02:00
jkriege2
c6ac8a8cc4 NEW: barcharts can be colored by a user-specified functor 2022-10-22 16:40:44 +02:00
jkriege2
3de1df2b94 updated impulse plots & doc 2022-09-26 02:08:01 +02:00
jkriege2
465583b48d bugfixed length of zero line 2022-09-25 21:22:29 +02:00
jkriege2
8855891eea NEW: added option to draw a zero axis to JKQTPCoordinateAxis, which draws an axis at the origin of the coordinate system 2022-09-25 15:34:05 +02:00
jkriege2
efa0db1bbe NEW: added possibility to scale the axis ticks by a factor (e.g. pi) to generate axes with ticks 0pi, 1pi, 2pi ... 2022-09-24 02:06:42 +02:00
jkriege2
bf4aa7ebdb JKQTPCALTprintf for general axis tick formatting with a printf-format string 2022-09-24 00:16:57 +02:00
jkriege2
b536d79aeb bugfix for older Qt versions 2022-09-23 21:45:30 +02:00
jkriege2
d2c2185f9c IMPROVED/REWORKED: reworked JKQTPCADrawMode and coordinate axis drawing so the draw mide can be specified as ORed combination of flags from JKQTPCADrawModeElements, added flags to draw arrows at the end of the axis line
IMPROVED/REWORKED: coordinate axis code was refactored
NEW: all elements of a coordinate axis may have their own color now
2022-09-23 20:43:53 +02:00
jkriege2
3c22130902 JKQTPlotter: IMPROVED/REWORKED: reworked JKQTPErrorPlotstyle and error indicator plotting so error-inidcators can be specified as ORed combination of flags from JKQTPErrorPlotstyleElements, added additional error indicator styles (half-bars, arrows...) 2022-09-14 22:03:46 +02:00
jkriege2
b7b78814da bugfix 2022-09-11 07:52:19 +02:00
jkriege2
1fb0c540d9 JKQTPlotter:
- FIXED plot-size calculation for filled graphs
  - added example for filled graphs with error indicators
2022-09-11 00:06:47 +02:00
jkriege2
6cc08c2041 JKQTPlotter: NEW: added new error indicator styles JKQTPErrorHalfBarsOutwards, JKQTPErrorHalfBarsInwards, JKQTPErrorHalfBarsAbove, JKQTPErrorHalfBarsBelow which are especially useful for barcharts
JKQTPlotter: added example for barcharts with errorbars
2022-09-11 00:03:31 +02:00
jkriege2
40748de442 JKQTPlotter: NEW: barcharts (derived from JKQTPBarGraphBase) can be configured to use different fill styles above and below the baseline 2022-09-10 14:35:16 +02:00
jkriege2
d46d82b17c JKQTPlotter: added examples for custom symbols 2022-09-07 21:38:29 +02:00
jkriege2
9b32e60442 added command-line tool that auto-generates images for the JKQTPLotter documentation, implemented auto-generated plot-symbols 2022-09-02 22:59:41 +02:00
jkriege2
6ebd8743ca JKQTMathText:
- NEW: Added the Fira Math fonts as sans-serif symbol font to the library (as a ressource) and added JKQTMathText::useFiraMath()
  - NEW: Added JKQTMathText::useGuiFonts()</li>
JKQTPlotter:
  - NEW: Using JKQTMathText::useGuiFonts() for FONT rendering by default
2022-09-01 14:36:34 +02:00
jkriege2
4ef29635ea JKQTPlotter: improved plotting speed for line-graphs by drawing a series of single lines instead of a polyline in some cases 2022-08-30 22:24:24 +02:00
jkriege2
abd62dc341 made randomnumber generators seeded with fixed values 2022-08-30 21:33:22 +02:00
jkriege2
eeff6e0036 fixed issue #73: Symbol thickness differs in actual plot and legend 2022-08-30 09:44:40 +02:00
jkriege2
e729ebbc78 docfix 2022-08-29 21:46:38 +02:00
jkriege2
6eba8acbf2 updated many documentation images to auto-generated ones 2022-08-28 22:48:14 +02:00
jkriege2
934aab330d updated more example images 2022-08-26 22:41:10 +02:00
jkriege2
a1604e1eeb added more auto-generated screenshots 2022-08-26 22:32:48 +02:00
jkriege2
b156fc7e40 NEW: added scatter graph JKQTPXYScatterGraph and JKQTPXYScatterErrorGraph 2022-08-26 12:41:42 +02:00
jkriege2
f4c4a693e4 bugfix+docfix 2022-08-25 17:25:23 +02:00
jkriege2
bd1afe2a0a NEW: added command line tool jkatmathtext_render that renders LaTeX into images, using it to generate the documentation images for JKQTMathText 2022-08-07 18:02:21 +02:00
jkriege2
f01a198b7b fixed several doxygen errors 2022-07-24 14:50:28 +02:00
jkriege2
ee2477a1f6 implemented wiggle plots (feature request #68) 2022-05-11 22:55:23 +02:00
jkriege2
a371dc86a5 updated predefined styles to updated styling system 2020-09-28 12:46:58 +02:00
jkriege2
9dbfd6e173 reworked class hierarchy of bar charts 2020-09-17 16:59:57 +02:00
jkriege2
22578725b7 added Mandelbrot Set Explorer and an Example 2020-09-11 23:22:04 +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
c57c672f78 new: a new graph class JKQTPXYFunctionLineGraph draws parametric 2D curves (f(t) -> [x,y]) 2020-09-04 23:47:03 +02:00
jkriege2
e97c0a13fe added simple geometric example, which produces the images fro teh documentation 2020-09-03 23:09:15 +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
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
b3f4c64564 added geometric plot JKQTPGeoArrow object to draw arrows 2020-08-21 18:31:58 +02:00
jkriege2
57e8fb3362 added CImg interface (header-only) + examples
some corrections for OpenCV examples
2019-11-16 13:50:43 +01: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
7311948d53 using CMake now to build examples
restructuring/massive renaming to make this possible
2019-06-20 22:24:47 +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
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
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
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
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
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
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
db3194898c improved doc image 2019-05-16 21:34:09 +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
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
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
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
d886757a1c moved build-projects for libs into their own subdirectories (works better with QMake, when building different libs) + necessary docu updates 2019-02-09 15:25:16 +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
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
jkriege2
2d08250db6 - added new graph: JKQTPSingleColumnSymbolsGraph
- fixed additional renames JKQTPLotter->JKQTPlotter
- improved documentation (boxplots, JKQTMathText)
- added several examples
2019-01-20 16:15:10 +01:00
jkriege2
86c2f3fa76 extensive renaming of classes --> using a unified CamelCase-Scheme now for class/function names 2019-01-20 10:49:29 +01:00
jkriege2
306436f770 corrected documentation 2019-01-19 18:06:30 +01:00
jkriege2
488df45829 improved code and files for doxygen documentation 2019-01-12 23:11:08 +01:00
jkriege2
615b25e871 added QuickFit3 screenshots 2019-01-12 14:21:18 +01:00
jkriege2
283cb7116b added missing documentation images 2019-01-12 14:08:32 +01:00
jkriege2
992c76f64f improved readme-structure 2019-01-12 14:02:12 +01:00
jkriege2
828afb1138 added example that explains how to use JKQtPlotter from the Qt Form Designer 2019-01-08 20:02:05 +01:00
jkriege2
5b910fc9b3 added example for geometric objects 2019-01-07 21:00:56 +01:00
Jan W. Krieger
877abaf2b8 add example for pointilistic image plot, using a scatter plot 2018-12-24 21:39:37 +01:00
Jan W. Krieger
d70c6cf377 tidied up code of parsed function graphs, added f(y) parsed function class (JKQTPyParsedFunctionLineGraph), improved examples 2018-12-24 15:07:14 +01:00
Jan W. Krieger
94acc1b7d5 JKQTPxFunctionLineGraph and JKQTPyFunctionLineGraph now allow for simplified functions without parameters + improved handling of special functions, improved example for parsed functions (with possibility to display sample points 2018-12-24 12:29:33 +01:00
Jan W. Krieger
4ac14ed871 improved parsed/evaluated function classes (made C++11-ready) and added examples for them 2018-12-23 20:27:24 +01:00
jkriege2
743a1865bd added example that shows how to draw parametric curves 2018-12-16 15:35:50 +01:00
jkriege2
f4ce4c875b added simple example for JKQTPxyParametrizedScatterGraph 2018-12-16 15:00:19 +01:00
jkriege2
6c975db771 added example for arranging plots in a QGridLayout 2018-12-13 22:29:37 +01:00
jkriege2
9debaae7fe renamed impulse plot classes, so the names actually make sense
added example for impulse plots
2018-12-11 23:00:43 +01:00
jkriege2
5e0471d0eb bugfix in JKQTPfilledCurveYGraph and example for JKQTPfilledCurveYGraph 2018-12-11 00:05:21 +01:00
jkriege2
49bac25809 improved data-access via JKQTPcolumn
added example for filled curves and data-access via JKQTPcolumn
2018-12-10 23:57:20 +01:00
jkriege2
08d51390b3 improved step plots (JKQTPstepHorizontalGraph, JKQTPstepVerticalGraph) with 3 step-modes (left/center/right), instead of only two (right/center)
added example for step plots
2018-12-06 21:41:35 +01:00
jkriege2
6b2ea6dc97 improvements to JKQTPImage, which may now also own an image and can receive a copy to this internally owned object from an external instance
added example that shows how to plot a QImage
2018-12-06 18:19:02 +01:00
jkriege2
dc36c6c90a improved log-axis-example 2018-12-03 23:09:12 +01:00
jkriege2
6520e598a9 added speed-test 2018-12-02 18:30:29 +01:00
jkriege2
cdf76539b3 added example project for error indicator styles 2018-12-02 11:38:27 +01:00
jkriege2
97f8b48642 improved main page 2018-12-01 16:08:33 +01:00
jkriege2
46d8a65bd3 improved main page 2018-12-01 16:06:32 +01:00
jkriege2
18a3a9857a added y-range-plot JKQTPfilledVerticalRangeGraph and example for it + date/time axes 2018-12-01 16:02:04 +01:00
jkriege2
2724b007aa added example for log axes 2018-11-29 22:48:31 +01:00
jkriege2
4949176229 modified example a bit 2018-11-29 22:06:58 +01:00
jkriege2
ffb70ace09 some renames and new example for line styles and symbols 2018-11-29 21:57:35 +01:00
jkriege2
46fce925d3 added missing image 2018-11-28 23:12:03 +01:00
jkriege2
db1d0cf102 added more examples and explanations for image plots, fixed some bugs in large example/test 2018-11-28 23:10:14 +01:00