JKQTPlotter trunk/v5.0.0
an extensive Qt5+Qt6 Plotter framework (including a feature-richt plotter widget, a speed-optimized, but limited variant and a LaTeX equation renderer!), written fully in C/C++ and without external dependencies
Loading...
Searching...
No Matches
jkqtpgraphsbasestyle.h
1/*
2 Copyright (c) 2008-2024 Jan W. Krieger (<jan@jkrieger.de>)
3
4
5
6 This software is free software: you can redistribute it and/or modify
7 it under the terms of the GNU Lesser General Public License as published by
8 the Free Software Foundation, either version 2.1 of the License, or
9 (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU Lesser General Public License for more details.
15
16 You should have received a copy of the GNU Lesser General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#ifndef JKQTPGRAPHSBASESTYLE_H
21#define JKQTPGRAPHSBASESTYLE_H
22
23#include "jkqtplotter/jkqtptools.h"
24#include "jkqtplotter/jkqtpimagetools.h"
25#include "jkqtplotter/jkqtpcoordinateaxesstyle.h"
26#include "jkqtplotter/jkqtpkeystyle.h"
27#include "jkqtplotter/jkqtpimagetools.h"
28#include "jkqtplotter/jkqtplotter_imexport.h"
29#include "jkqtcommon/jkqtpdrawingtools.h"
30#include "jkqtcommon/jkqtpbasicimagetools.h"
31#include "jkqtplotter/jkqtplotter_configmacros.h"
32#include <QColor>
33#include <QPainter>
34#include <QString>
35#include <QHash>
36#include <QPair>
37#include <QVector>
38#include <QSettings>
39
40class JKQTBasePlotterStyle; // forward
41
42/** \brief Support Class for JKQTBasePlotter, which summarizes a fill style
43 * \ingroup jkqtpplotter_styling_classes
44 *
45 * \see JKQTBasePlotter, JKQTGraphsBaseStyle, \ref jkqtpplotter_styling
46 */
48#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
49 Q_GADGET
50#endif
51public:
52 JKQTFillStyleSummmary(Qt::BrushStyle style=Qt::SolidPattern, const QGradient& grad=QGradient());
53
54 /** \brief a brushStyle (e.g. pattern) to use for filling */
55 Qt::BrushStyle brushStyle;
56 /** \brief a QGradient to use for filling */
57 QGradient gradient;
58 /** \brief a texture to use for filling */
59 QPixmap texture;
60
61 /** \brief constructs a QBrush from the data in this object, possibly using \a color to replace JKQTPlotterDrawingTools::CurrentColorPlaceholder color stops and a color for a pattern defined via e.g. \c brushStyle=Qt::BDiagPattern */
62 QBrush brush(const QColor& color) const;
63
64 /** \brief reads object contents from a string representation, e.g. as created by JKQTFillStyleSummmary::toCSSString() */
65 static JKQTFillStyleSummmary fromString(const QString& style);
66 /** \brief converst the contents to a string representation */
67 QString toCSSString() const;
68};
69
70/** \brief Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of graphs
71 * \ingroup jkqtpplotter_styling_classes
72 *
73 * \see JKQTBasePlotter, \ref jkqtpplotter_styling
74 */
76#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
77 Q_GADGET
78#endif
79 public:
80 /** \brief initializes the object for the given \a type and takes some properties from the \a parent */
82 /** \brief initializes the object as a copy of \a other, but modified some properties for the given \a type */
88
89
90 /** \brief loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object
91 *
92 * \param settings QSettings-object to read from
93 * \param group Group in the QSettings-object to read from
94 * \param defaultStyle If a setting cannot be found in \a settings, default values are taken from this object
95 * By default, this is a default-constructed object
96 */
97 void loadSettings(const QSettings &settings, const QString& group, const JKQTGraphsSpecificStyleProperties &defaultStyle);
98
99 /** \brief saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object.
100 *
101 * \param settings QSettings-object to save to
102 * \param group Group in the QSettings-object to save to
103 */
104 void saveSettings(QSettings& settings, const QString& group) const;
105
106 /** \brief width (in pt) of lines used for newly added graphs */
108 /** \brief size (in pt) of symbols used for newly added graphs */
110 /** \brief width (in pt) of the outline of symbols used for newly added graphs */
112 /** \brief width (in pt) of lines used for the error indicators of newly added graphs */
114 /** \brief head decorator style */
116 /** \brief head decorator size-factor, used to calculate the size of the arrow from the line width */
118 /** \↓brief fill style for error indicators */
119 Qt::BrushStyle errorFillStyle;
120 /** \brief defines how to derive the basic graph color for a new graph from the color selected from JKQTGraphsBaseStyle::defaultGraphColors
121 *
122 * This property is usually JKQTPFFCMSameColor, but can be changed to allow to e.g. fill
123 * barcharts always with a lighter color than the full color ...
124 */
126 /** \brief defines how to derive a fill color for a new graph */
128 /** \brief defines how to derive an error color for a new graph */
130 /** \brief defines how to derive an error fill color from the error color for a new graph */
132 /** \brief defines how to derive a symbol fill color for a new graph */
134 private:
135 /** \brief modifies some of the settings to match the defaults for the given JKQTPPlotStyleType (e.g. sets line-width for impulses ...) */
137};
138
139
140
141 /** \brief Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of geometric elements
142 * \ingroup jkqtpplotter_styling_classes
143 *
144 * \see JKQTBasePlotter, \ref jkqtpplotter_styling
145 */
147#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
148 Q_GADGET
149#endif
150public:
159
160
161 /** \brief loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object
162 *
163 * \param settings QSettings-object to read from
164 * \param group Group in the QSettings-object to read from
165 * \param defaultStyle If a setting cannot be found in \a settings, default values are taken from this object
166 * By default, this is a default-constructed object
167 */
168 void loadSettings(const QSettings &settings, const QString& group, const JKQTGeometricSpecificStyleProperties &defaultStyle);
169
170 /** \brief saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object.
171 *
172 * \param settings QSettings-object to save to
173 * \param group Group in the QSettings-object to save to
174 */
175 void saveSettings(QSettings& settings, const QString& group) const;
176
177
178 /** \brief graph color used */
180 /** \brief graph line style used */
181 Qt::PenStyle defaultLineStyle;
182 /** \brief graph symbol used */
184 /** \brief graph fill style used */
186
187
188};
189
190
191 /** \brief Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of annotation elements
192 * \ingroup jkqtpplotter_styling_classes
193 *
194 * \see JKQTBasePlotter, \ref jkqtpplotter_styling
195 */
197#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
198 Q_GADGET
199#endif
200public:
207
208
209 /** \brief loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object
210 *
211 * \param settings QSettings-object to read from
212 * \param group Group in the QSettings-object to read from
213 * \param defaultStyle If a setting cannot be found in \a settings, default values are taken from this object
214 * By default, this is a default-constructed object
215 */
216 void loadSettings(const QSettings &settings, const QString& group, const JKQTAnnotationsSpecificStyleProperties &defaultStyle);
217
218 /** \brief saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object.
219 *
220 * \param settings QSettings-object to save to
221 * \param group Group in the QSettings-object to save to
222 */
223 void saveSettings(QSettings& settings, const QString& group) const;
224
225 /** \brief default text color in the plot */
227 /** \brief default font size in the plot [pt] */
229 /** \brief default font name in the plot */
231
232
233};
234
235
236/** \brief Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of barchart elements
237* \ingroup jkqtpplotter_styling_classes
238*
239* \see JKQTBasePlotter, \ref jkqtpplotter_styling
240*/
242#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
243 Q_GADGET
244#endif
245public:
252
253
254 /** \brief loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object
255 *
256 * \param settings QSettings-object to read from
257 * \param group Group in the QSettings-object to read from
258 * \param defaultStyle If a setting cannot be found in \a settings, default values are taken from this object
259 * By default, this is a default-constructed object
260 */
261 void loadSettings(const QSettings &settings, const QString& group, const JKQTBarchartSpecificStyleProperties &defaultStyle);
262
263 /** \brief saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object.
264 *
265 * \param settings QSettings-object to save to
266 * \param group Group in the QSettings-object to save to
267 */
268 void saveSettings(QSettings& settings, const QString& group) const;
269
270 /** \brief corner radius (in pt) for bars at the "value" end */
272 /** \brief corner radius (in pt) for bars at the "baseline" end */
274 /** \brief indicates whether to draw a baseline (style is derived from axis style) */
276 /** \brief separation between consecutive pars in a stack of bars [in pt] */
278
279
280};
281
282
283
284/** \brief Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of impulse/stick graph elements
285* \ingroup jkqtpplotter_styling_classes
286*
287* \see JKQTBasePlotter, \ref jkqtpplotter_styling
288*/
290#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
291 Q_GADGET
292#endif
293public:
300
301
302 /** \brief loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object
303 *
304 * \param settings QSettings-object to read from
305 * \param group Group in the QSettings-object to read from
306 * \param defaultStyle If a setting cannot be found in \a settings, default values are taken from this object
307 * By default, this is a default-constructed object
308 */
309 void loadSettings(const QSettings &settings, const QString& group, const JKQTImpulseSpecificStyleProperties &defaultStyle);
310
311 /** \brief saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object.
312 *
313 * \param settings QSettings-object to save to
314 * \param group Group in the QSettings-object to save to
315 */
316 void saveSettings(QSettings& settings, const QString& group) const;
317
318 /** \brief indicates whether to draw a baseline (style is derived from axis style) */
320
321
322};
323
324
325
326/** \brief Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of impulse/stick graph elements
327* \ingroup jkqtpplotter_styling_classes
328*
329* \see JKQTBasePlotter, \ref jkqtpplotter_styling
330*/
332#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
333 Q_GADGET
334#endif
335public:
342
343
344 /** \brief loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object
345 *
346 * \param settings QSettings-object to read from
347 * \param group Group in the QSettings-object to read from
348 * \param defaultStyle If a setting cannot be found in \a settings, default values are taken from this object
349 * By default, this is a default-constructed object
350 */
351 void loadSettings(const QSettings &settings, const QString& group, const JKQTFinancialSpecificStyleProperties &defaultStyle);
352
353 /** \brief saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object.
354 *
355 * \param settings QSettings-object to save to
356 * \param group Group in the QSettings-object to save to
357 */
358 void saveSettings(QSettings& settings, const QString& group) const;
359
360 /** \brief default color to use for the (first) financial graph, positive elements */
362 /** \brief default color to use for the (first) financial graph, negative elements */
364 /** \brief defines how to derive the basic graph color for negative elements in a new graph from the color selected from JKQTGraphsBaseStyle::defaultGraphColors
365 *
366 * This property is usually JKQTPFFCMSameColor, but can be changed to allow to e.g. fill
367 * barcharts always with a lighter color than the full color ...
368 */
370 /** \brief graph fill style used for positive element */
372 /** \brief graph fill style used for negative element */
374
375
376
377};
378
379
380
381/** \brief Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of a JKQTBasePlotter
382 * \ingroup jkqtpplotter_styling_classes
383 *
384 * \see JKQTBasePlotter, \ref jkqtpplotter_styling
385 */
387#ifndef JKQTPLOTTER_WORKAROUND_QGADGET_BUG
388 Q_GADGET
389#endif
390 public:
392
393
394
395 /** \brief loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object
396 *
397 * \param settings QSettings-object to read from
398 * \param group Group in the QSettings-object to read from
399 * \param defaultStyle If a setting cannot be found in \a settings, default values are taken from this object
400 * By default, this is a default-constructed object
401 * \param parent parent JKQTBasePlotterStyle instance for inital values
402 */
403 void loadSettings(const QSettings &settings, const QString& group, const JKQTGraphsBaseStyle &defaultStyle, const JKQTBasePlotterStyle& parent);
404
405 /** \brief saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings</a> object.
406 *
407 * \param settings QSettings-object to save to
408 * \param group Group in the QSettings-object to save to
409 */
410 void saveSettings(QSettings& settings, const QString& group=QString("graphs_styling/")) const;
411
412 /** \brief specifies whether to use antialiasing for plotting the graphs
413 *
414 * \note You can set this property \c false to increase plotting speed of complex plots (with many graphs inside). You can reach a
415 * roughly three-fold speed improvement!
416 */
418
419
420 /** \brief styling options for standard graphs */
422 /** \brief styling options for bargraph graphs */
424 /** \brief styling options for boxplots graphs */
426 /** \brief styling options for filled graphs */
428 /** \brief styling options for impulses graphs */
430 /** \brief styling options for geometric elements */
432 /** \brief styling options for annotation elements */
434 /** \brief styling options for financial elements */
436
437 /** \brief returns defaultGraphStyle, barchartStyle, ..., depending on the value of \a type */
439
440 /** \brief color palette used by default for new graphs */
442
443 /** \brief colors used to automatically collor different graphs differently */
444 QVector<QColor> defaultGraphColors;
445 /** \brief Qt::PenStyle used to automatically style different graphs differently */
446 QVector<Qt::PenStyle> defaultGraphPenStyles;
447 /** \brief JKQTPGraphSymbols used to automatically assign to different graphs */
448 QVector<JKQTPGraphSymbols> defaultGraphSymbols;
449 /** \brief Qt::BrushStyle used to automatically style different graphs differently */
450 QVector<JKQTFillStyleSummmary> defaultGraphFillStyles;
451
452 /** \brief standard color palette for the default style */
453 static QVector<QColor> getDefaultGraphColors();
454 /** \brief a list of Qt::PenStyles used to automatically style different graphs differently in the default style */
455 static QVector<Qt::PenStyle> getDefaultGraphPenStyles();
456 /** \brief list of JKQTPGraphSymbols used to automatically assign to different graphs in the default style */
457 static QVector<JKQTPGraphSymbols> getDefaultGraphSymbols();
458 /** \brief list of Qt::BrushStyle used to automatically style different graphs differently in the default style */
459 static QVector<JKQTFillStyleSummmary> getDefaultGraphFillStyles();
460
461};
462
463#endif // JKQTPGRAPHSBASESTYLE_H
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpgraphsbasestyle.h:196
JKQTAnnotationsSpecificStyleProperties(const JKQTAnnotationsSpecificStyleProperties &other)=default
JKQTAnnotationsSpecificStyleProperties(const JKQTBasePlotterStyle &parent, const JKQTGraphsSpecificStyleProperties &other)
JKQTAnnotationsSpecificStyleProperties(const JKQTBasePlotterStyle &parent)
void loadSettings(const QSettings &settings, const QString &group, const JKQTAnnotationsSpecificStyleProperties &defaultStyle)
loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object
JKQTAnnotationsSpecificStyleProperties & operator=(const JKQTAnnotationsSpecificStyleProperties &other)=default
QString defaultFontName
default font name in the plot
Definition jkqtpgraphsbasestyle.h:230
JKQTAnnotationsSpecificStyleProperties & operator=(JKQTAnnotationsSpecificStyleProperties &&other)=default
JKQTAnnotationsSpecificStyleProperties(JKQTAnnotationsSpecificStyleProperties &&other)=default
double defaultFontSize
default font size in the plot [pt]
Definition jkqtpgraphsbasestyle.h:228
QColor defaultTextColor
default text color in the plot
Definition jkqtpgraphsbasestyle.h:226
void saveSettings(QSettings &settings, const QString &group) const
saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object.
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpgraphsbasestyle.h:241
JKQTBarchartSpecificStyleProperties(const JKQTBasePlotterStyle &parent)
double defaultRectRadiusAtValue
corner radius (in pt) for bars at the "value" end
Definition jkqtpgraphsbasestyle.h:271
JKQTBarchartSpecificStyleProperties(JKQTBarchartSpecificStyleProperties &&other)=default
void loadSettings(const QSettings &settings, const QString &group, const JKQTBarchartSpecificStyleProperties &defaultStyle)
loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object
JKQTBarchartSpecificStyleProperties & operator=(JKQTBarchartSpecificStyleProperties &&other)=default
void saveSettings(QSettings &settings, const QString &group) const
saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object.
double stackSeparation
separation between consecutive pars in a stack of bars [in pt]
Definition jkqtpgraphsbasestyle.h:277
bool drawBaseline
indicates whether to draw a baseline (style is derived from axis style)
Definition jkqtpgraphsbasestyle.h:275
JKQTBarchartSpecificStyleProperties(const JKQTBarchartSpecificStyleProperties &other)=default
double defaultRectRadiusAtBaseline
corner radius (in pt) for bars at the "baseline" end
Definition jkqtpgraphsbasestyle.h:273
JKQTBarchartSpecificStyleProperties & operator=(const JKQTBarchartSpecificStyleProperties &other)=default
JKQTBarchartSpecificStyleProperties(const JKQTBasePlotterStyle &parent, const JKQTGraphsSpecificStyleProperties &other)
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpbaseplotterstyle.h:47
Support Class for JKQTBasePlotter, which summarizes a fill style.
Definition jkqtpgraphsbasestyle.h:47
Qt::BrushStyle brushStyle
a brushStyle (e.g. pattern) to use for filling
Definition jkqtpgraphsbasestyle.h:55
QString toCSSString() const
converst the contents to a string representation
QGradient gradient
a QGradient to use for filling
Definition jkqtpgraphsbasestyle.h:57
QPixmap texture
a texture to use for filling
Definition jkqtpgraphsbasestyle.h:59
JKQTFillStyleSummmary(Qt::BrushStyle style=Qt::SolidPattern, const QGradient &grad=QGradient())
static JKQTFillStyleSummmary fromString(const QString &style)
reads object contents from a string representation, e.g. as created by JKQTFillStyleSummmary::toCSSSt...
QBrush brush(const QColor &color) const
constructs a QBrush from the data in this object, possibly using color to replace JKQTPlotterDrawingT...
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpgraphsbasestyle.h:331
JKQTFinancialSpecificStyleProperties(JKQTFinancialSpecificStyleProperties &&other)=default
JKQTFillStyleSummmary negativeFillStyle
graph fill style used for negative element
Definition jkqtpgraphsbasestyle.h:373
JKQTFillStyleSummmary positiveFillStyle
graph fill style used for positive element
Definition jkqtpgraphsbasestyle.h:371
QColor positiveDefaultColor
default color to use for the (first) financial graph, positive elements
Definition jkqtpgraphsbasestyle.h:361
JKQTFinancialSpecificStyleProperties & operator=(JKQTFinancialSpecificStyleProperties &&other)=default
JKQTFinancialSpecificStyleProperties(const JKQTBasePlotterStyle &parent)
void saveSettings(QSettings &settings, const QString &group) const
saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object.
QColor negativeDefaultColor
default color to use for the (first) financial graph, negative elements
Definition jkqtpgraphsbasestyle.h:363
JKQTFinancialSpecificStyleProperties(const JKQTFinancialSpecificStyleProperties &other)=default
JKQTFinancialSpecificStyleProperties(const JKQTBasePlotterStyle &parent, const JKQTGraphsSpecificStyleProperties &other)
JKQTFinancialSpecificStyleProperties & operator=(const JKQTFinancialSpecificStyleProperties &other)=default
JKQTPColorDerivationMode negativeGraphColorDerivationMode
defines how to derive the basic graph color for negative elements in a new graph from the color selec...
Definition jkqtpgraphsbasestyle.h:369
void loadSettings(const QSettings &settings, const QString &group, const JKQTFinancialSpecificStyleProperties &defaultStyle)
loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpgraphsbasestyle.h:146
void saveSettings(QSettings &settings, const QString &group) const
saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object.
Qt::PenStyle defaultLineStyle
graph line style used
Definition jkqtpgraphsbasestyle.h:181
JKQTGeometricSpecificStyleProperties & operator=(JKQTGeometricSpecificStyleProperties &&other)=default
JKQTGeometricSpecificStyleProperties(const JKQTGeometricSpecificStyleProperties &other)=default
JKQTGeometricSpecificStyleProperties(const JKQTBasePlotterStyle &parent)
JKQTPGraphSymbols defaultSymbol
graph symbol used
Definition jkqtpgraphsbasestyle.h:183
QColor defaultColor
graph color used
Definition jkqtpgraphsbasestyle.h:179
void loadSettings(const QSettings &settings, const QString &group, const JKQTGeometricSpecificStyleProperties &defaultStyle)
loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object
JKQTGeometricSpecificStyleProperties(JKQTPPlotStyleType type, const JKQTGraphsSpecificStyleProperties &other, const JKQTBasePlotterStyle &parent)
JKQTFillStyleSummmary defaultFillStyle
graph fill style used
Definition jkqtpgraphsbasestyle.h:185
JKQTGeometricSpecificStyleProperties(JKQTPPlotStyleType type, const JKQTBasePlotterStyle &parent)
JKQTGeometricSpecificStyleProperties & operator=(const JKQTGeometricSpecificStyleProperties &other)=default
JKQTGeometricSpecificStyleProperties(JKQTGeometricSpecificStyleProperties &&other)=default
JKQTGeometricSpecificStyleProperties(const JKQTBasePlotterStyle &parent, const JKQTGraphsSpecificStyleProperties &other)
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpgraphsbasestyle.h:386
JKQTAnnotationsSpecificStyleProperties annotationStyle
styling options for annotation elements
Definition jkqtpgraphsbasestyle.h:433
JKQTGraphsSpecificStyleProperties filledStyle
styling options for filled graphs
Definition jkqtpgraphsbasestyle.h:427
JKQTGraphsSpecificStyleProperties defaultGraphStyle
styling options for standard graphs
Definition jkqtpgraphsbasestyle.h:421
QVector< JKQTFillStyleSummmary > defaultGraphFillStyles
Qt::BrushStyle used to automatically style different graphs differently.
Definition jkqtpgraphsbasestyle.h:450
static QVector< Qt::PenStyle > getDefaultGraphPenStyles()
a list of Qt::PenStyles used to automatically style different graphs differently in the default style
QVector< QColor > defaultGraphColors
colors used to automatically collor different graphs differently
Definition jkqtpgraphsbasestyle.h:444
static QVector< QColor > getDefaultGraphColors()
standard color palette for the default style
JKQTGraphsBaseStyle(const JKQTBasePlotterStyle &parent)
const JKQTGraphsSpecificStyleProperties & getGraphStyleByType(JKQTPPlotStyleType type) const
returns defaultGraphStyle, barchartStyle, ..., depending on the value of type
bool useAntiAliasingForGraphs
specifies whether to use antialiasing for plotting the graphs
Definition jkqtpgraphsbasestyle.h:417
JKQTPMathImageColorPalette defaultPalette
color palette used by default for new graphs
Definition jkqtpgraphsbasestyle.h:441
JKQTGeometricSpecificStyleProperties geometricStyle
styling options for geometric elements
Definition jkqtpgraphsbasestyle.h:431
void loadSettings(const QSettings &settings, const QString &group, const JKQTGraphsBaseStyle &defaultStyle, const JKQTBasePlotterStyle &parent)
loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object
void saveSettings(QSettings &settings, const QString &group=QString("graphs_styling/")) const
saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object.
QVector< Qt::PenStyle > defaultGraphPenStyles
Qt::PenStyle used to automatically style different graphs differently.
Definition jkqtpgraphsbasestyle.h:446
JKQTFinancialSpecificStyleProperties financialStyle
styling options for financial elements
Definition jkqtpgraphsbasestyle.h:435
static QVector< JKQTPGraphSymbols > getDefaultGraphSymbols()
list of JKQTPGraphSymbols used to automatically assign to different graphs in the default style
JKQTBarchartSpecificStyleProperties barchartStyle
styling options for bargraph graphs
Definition jkqtpgraphsbasestyle.h:423
QVector< JKQTPGraphSymbols > defaultGraphSymbols
JKQTPGraphSymbols used to automatically assign to different graphs.
Definition jkqtpgraphsbasestyle.h:448
JKQTGraphsSpecificStyleProperties boxplotStyle
styling options for boxplots graphs
Definition jkqtpgraphsbasestyle.h:425
static QVector< JKQTFillStyleSummmary > getDefaultGraphFillStyles()
list of Qt::BrushStyle used to automatically style different graphs differently in the default style
JKQTImpulseSpecificStyleProperties impulseStyle
styling options for impulses graphs
Definition jkqtpgraphsbasestyle.h:429
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpgraphsbasestyle.h:75
JKQTGraphsSpecificStyleProperties(const JKQTGraphsSpecificStyleProperties &other)=default
void modifyForDefaultStyle(JKQTPPlotStyleType type)
modifies some of the settings to match the defaults for the given JKQTPPlotStyleType (e....
double defaultSymbolSize
size (in pt) of symbols used for newly added graphs
Definition jkqtpgraphsbasestyle.h:109
JKQTGraphsSpecificStyleProperties(JKQTPPlotStyleType type, const JKQTGraphsSpecificStyleProperties &other)
initializes the object as a copy of other, but modified some properties for the given type
JKQTPColorDerivationMode graphColorDerivationMode
defines how to derive the basic graph color for a new graph from the color selected from JKQTGraphsBa...
Definition jkqtpgraphsbasestyle.h:125
void saveSettings(QSettings &settings, const QString &group) const
saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object.
JKQTGraphsSpecificStyleProperties(JKQTGraphsSpecificStyleProperties &&other)=default
double defaultLineWidth
width (in pt) of lines used for newly added graphs
Definition jkqtpgraphsbasestyle.h:107
JKQTGraphsSpecificStyleProperties(JKQTPPlotStyleType type, const JKQTBasePlotterStyle &parent)
initializes the object for the given type and takes some properties from the parent
JKQTGraphsSpecificStyleProperties & operator=(const JKQTGraphsSpecificStyleProperties &other)=default
double defaultHeadDecoratorSizeFactor
head decorator size-factor, used to calculate the size of the arrow from the line width
Definition jkqtpgraphsbasestyle.h:117
JKQTPColorDerivationMode symbolFillColorDerivationMode
defines how to derive a symbol fill color for a new graph
Definition jkqtpgraphsbasestyle.h:133
JKQTPColorDerivationMode fillColorDerivationMode
defines how to derive a fill color for a new graph
Definition jkqtpgraphsbasestyle.h:127
double defaultSymbolLineWidth
width (in pt) of the outline of symbols used for newly added graphs
Definition jkqtpgraphsbasestyle.h:111
JKQTPColorDerivationMode errorFillColorDerivationMode
defines how to derive an error fill color from the error color for a new graph
Definition jkqtpgraphsbasestyle.h:131
double defaultErrorIndicatorWidth
width (in pt) of lines used for the error indicators of newly added graphs
Definition jkqtpgraphsbasestyle.h:113
void loadSettings(const QSettings &settings, const QString &group, const JKQTGraphsSpecificStyleProperties &defaultStyle)
loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object
JKQTPColorDerivationMode errorColorDerivationMode
defines how to derive an error color for a new graph
Definition jkqtpgraphsbasestyle.h:129
JKQTGraphsSpecificStyleProperties & operator=(JKQTGraphsSpecificStyleProperties &&other)=default
JKQTPLineDecoratorStyle defaultHeadDecoratorStyle
head decorator style
Definition jkqtpgraphsbasestyle.h:115
Qt::BrushStyle errorFillStyle
Definition jkqtpgraphsbasestyle.h:119
Support Class for JKQTBasePlotter, which summarizes all properties that define the visual styling of ...
Definition jkqtpgraphsbasestyle.h:289
JKQTImpulseSpecificStyleProperties(const JKQTImpulseSpecificStyleProperties &other)=default
void loadSettings(const QSettings &settings, const QString &group, const JKQTImpulseSpecificStyleProperties &defaultStyle)
loads the plot properties from a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object
JKQTImpulseSpecificStyleProperties(const JKQTBasePlotterStyle &parent, const JKQTGraphsSpecificStyleProperties &other)
bool drawBaseline
indicates whether to draw a baseline (style is derived from axis style)
Definition jkqtpgraphsbasestyle.h:319
JKQTImpulseSpecificStyleProperties(const JKQTBasePlotterStyle &parent)
JKQTImpulseSpecificStyleProperties & operator=(JKQTImpulseSpecificStyleProperties &&other)=default
JKQTImpulseSpecificStyleProperties(JKQTImpulseSpecificStyleProperties &&other)=default
JKQTImpulseSpecificStyleProperties & operator=(const JKQTImpulseSpecificStyleProperties &other)=default
void saveSettings(QSettings &settings, const QString &group) const
saves the plot properties into a <a href="http://doc.qt.io/qt-5/qsettings.html")">QSettings object.
JKQTPMathImageColorPalette
available palettes for coloring an image
Definition jkqtpbasicimagetools.h:84
#define JKQTPLOTTER_LIB_EXPORT
Definition jkqtplotter_imexport.h:89
JKQTPPlotStyleType
used to specify teh type of graph when calling getPlotStyle()
Definition jkqtptools.h:68
JKQTPLineDecoratorStyle
symbols that can be used to plot a datapoint for a graph
Definition jkqtpdrawingtools.h:365
JKQTPGraphSymbols
symbols that can be used to plot a datapoint for a graph
Definition jkqtpdrawingtools.h:143
Specifies how a fill-color is derived from a given color.
Definition jkqtptools.h:262