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
Collaboration diagram for Support Classes and Functions:

Classes

struct  JKQTPGridPrintingItem
 used to represent the position of other graphs in Saving and Printing Graphs More...
 
class  JKQTPPaintDeviceAdapter
 Service from this class to implement a special QPaintDevice as a plugin, that can be registered to JKQTBasePlotter/JKQTPlotter and then be used to export graphics, use registerPaintDeviceAdapter() to register such a plass. More...
 
class  JKQTPSaveDataAdapter
 virtual base-class for exporter classes that can be used to save data inot a file More...
 

Macros

#define JKQTPLOTTER_COMPILE_WITHOUT_PRINTSUPPORT
 This is defined if JKQtPlotter shall be compiled without print-support, or print-support is not available.
 
#define JKQTPLOTTER_LIB_EXPORT   Q_DECL_EXPORT
 
#define JKQTPLOTTER_LIB_EXPORT_LIBRARY
 is only defined while compiling JKQTPlotter into JKQTPlotterSharedLib_XYZ and ensures thet the symbols are exported. If it is not defined (e.g. while compiling an application), the symbols are imported
 
#define JKQTPLOTTER_LIB_IN_DLL
 declares that the application should link against a shared version of JKQTPlotter, i.e. JKQTPlotterSharedLib_XYZ . This needs to be defined while compiling the library and while compiling any application linking against JKQTPlotterSharedLib_XYZ.
 
#define JKQTPLOTTER_WORKAROUND_QGADGET_BUG
 This #define is used to work around a bug in Qt when compiled with CLANG (see https://bugreports.qt.io/browse/QTBUG-104874): Multiple inheritance does not work with Q_GADGET in this setup.
 

Typedefs

typedef JKQTPCoordinateAxes JKQTPCoordinateAxisRef
 type for indexing coordinate axes in a plot
 
typedef QFlags< JKQTPKeyPositionsJKQTPKeyPosition
 position of the key
 
typedef QHash< QPair< Qt::MouseButton, Qt::KeyboardModifiers >, JKQTPMouseDoubleClickActionsJKQTPMouseDoubleClickActionsHashMap
 data structure for storage of assigned JKQTPMouseDoubleClickActions
 
typedef JKQTPMouseDoubleClickActionsHashMap::const_iterator JKQTPMouseDoubleClickActionsHashMapIterator
 iterator for JKQTPMouseDoubleClickActionsHashMap
 
typedef QHash< QPair< Qt::MouseButton, Qt::KeyboardModifiers >, JKQTPMouseDragActionsJKQTPMouseDragActionsHashMap
 data structure for storage of assigned JKQTPMouseDragActions
 
typedef JKQTPMouseDragActionsHashMap::const_iterator JKQTPMouseDragActionsHashMapIterator
 iterator for JKQTPMouseDragActionsHashMap
 
typedef QHash< Qt::KeyboardModifiers, JKQTPMouseMoveActionsJKQTPMouseMoveActionsHashMap
 data structure for storage of assigned JKQTPMouseMoveActions
 
typedef JKQTPMouseMoveActionsHashMap::const_iterator JKQTPMouseMoveActionsHashMapIterator
 iterator for JKQTPMouseMoveActionsHashMap
 
typedef QHash< Qt::KeyboardModifiers, JKQTPMouseWheelActionsJKQTPMouseWheelActionsHashMap
 data structure for storage of assigned JKQTPMouseWheelActions
 
typedef JKQTPMouseWheelActionsHashMap::const_iterator JKQTPMouseWheelActionsHashMapIterator
 iterator for JKQTPMouseWheelActionsHashMap
 

Enumerations

enum  JKQTPCADrawModeElements {
  JKQTPCADMLine =0x01 ,
  JKQTPCADMTicks =0x02 ,
  JKQTPCADMTickLabels =0x04 ,
  JKQTPCADMAxisLabel =0x08 ,
  JKQTPCADMMaxArrow =0x0100 ,
  JKQTPCADMMaxFilledArrow =0x0200 ,
  JKQTPCADMMinArrow =0x1000 ,
  JKQTPCADMMinFilledArrow =0x2000 ,
  JKQTPCADMLineTicksTickLabels =JKQTPCADMLine|JKQTPCADMTicks|JKQTPCADMTickLabels ,
  JKQTPCADMLineTicks =JKQTPCADMLine|JKQTPCADMTicks ,
  JKQTPCADMTicksTickLabelsAxisLabel =JKQTPCADMTicks|JKQTPCADMTickLabels|JKQTPCADMAxisLabel ,
  JKQTPCADMTicksTickLabels =JKQTPCADMTicks|JKQTPCADMTickLabels ,
  JKQTPCADMTickLabelsAxisLabel =JKQTPCADMTickLabels|JKQTPCADMAxisLabel ,
  JKQTPCADMnone =0x0000 ,
  JKQTPCADMcomplete =JKQTPCADMLine|JKQTPCADMTicks|JKQTPCADMTickLabels|JKQTPCADMAxisLabel ,
  JKQTPCADMcompleteMaxArrow =JKQTPCADMcomplete|JKQTPCADMMaxFilledArrow ,
  JKQTPCADMcompleteMinMaxArrow =JKQTPCADMcomplete|JKQTPCADMMaxFilledArrow|JKQTPCADMMinFilledArrow
}
 drawing flags for a coordinate axis More...
 
enum  JKQTPCALabelType {
  JKQTPCALTdefault =0 ,
  JKQTPCALTscientific ,
  JKQTPCALTexponentCharacter ,
  JKQTPCALTexponent ,
  JKQTPCALTprintf ,
  JKQTPCALTdate ,
  JKQTPCALTtime ,
  JKQTPCALTdatetime ,
  JKQTPCALTfrac ,
  JKQTPCALTslashfrac ,
  JKQTPCALTsfrac ,
  JKQTPCALTintfrac ,
  JKQTPCALTintslashfrac ,
  JKQTPCALTintsfrac ,
  JKQTPCALTformat ,
  JKQTPCALTcount ,
  JKQTPCALTmax =JKQTPCALTcount-1
}
 display mode for the (axis) labels More...
 
enum  JKQTPContextMenuModes {
  jkqtpcmmStandardContextMenu =0 ,
  jkqtpcmmSpecialContextMenu ,
  jkqtpcmmStandardAndSpecialContextMenu ,
  jkqtpcmmNoContextMenu
}
 modes for the context menu More...
 
enum  JKQTPCoordinateAxes : uint8_t {
  JKQTPPrimaryAxis =0 ,
  JKQTPSecondaryAxis =1
}
 named references for different oordinate axes in the plot More...
 
enum  JKQTPKeyLayout {
  JKQTPKeyLayoutOneColumn =0 ,
  JKQTPKeyLayoutOneRow ,
  JKQTPKeyLayoutMultiColumn ,
  JKQTPKeyLayoutMultiRow ,
  JKQTPKeyLayoutMax =JKQTPKeyLayoutMultiRow
}
 layout of the key More...
 
enum  JKQTPKeyPositions {
  JKQTPKeyInside =0x0001 ,
  JKQTPKeyOutsideTop =0x0010 ,
  JKQTPKeyOutsideBottom =0x0020 ,
  JKQTPKeyOutsideLeft =0x0040 ,
  JKQTPKeyOutsideRight =0x0080 ,
  JKQTPKeyLeft =0x0100 ,
  JKQTPKeyHCenter =0x0200 ,
  JKQTPKeyRight =0x0400 ,
  JKQTPKeyTop =0x1000 ,
  JKQTPKeyVCenter =0x2000 ,
  JKQTPKeyBottom =0x4000 ,
  JKQTPKeyOutsideTopRight =JKQTPKeyOutsideTop|JKQTPKeyBottom|JKQTPKeyRight ,
  JKQTPKeyOutsideTopLeft =JKQTPKeyOutsideTop|JKQTPKeyBottom|JKQTPKeyLeft ,
  JKQTPKeyOutsideTopCenter =JKQTPKeyOutsideTop|JKQTPKeyBottom|JKQTPKeyHCenter ,
  JKQTPKeyOutsideBottomLeft =JKQTPKeyOutsideBottom|JKQTPKeyTop|JKQTPKeyLeft ,
  JKQTPKeyOutsideBottomRight =JKQTPKeyOutsideBottom|JKQTPKeyTop|JKQTPKeyRight ,
  JKQTPKeyOutsideBottomCenter =JKQTPKeyOutsideBottom|JKQTPKeyTop|JKQTPKeyHCenter ,
  JKQTPKeyOutsideLeftTop =JKQTPKeyOutsideLeft|JKQTPKeyTop|JKQTPKeyRight ,
  JKQTPKeyOutsideLeftCenter =JKQTPKeyOutsideLeft|JKQTPKeyVCenter|JKQTPKeyRight ,
  JKQTPKeyOutsideLeftBottom =JKQTPKeyOutsideLeft|JKQTPKeyBottom|JKQTPKeyRight ,
  JKQTPKeyOutsideRightBottom =JKQTPKeyOutsideRight|JKQTPKeyBottom|JKQTPKeyLeft ,
  JKQTPKeyOutsideRightCenter =JKQTPKeyOutsideRight|JKQTPKeyVCenter|JKQTPKeyLeft ,
  JKQTPKeyOutsideRightTop =JKQTPKeyOutsideRight|JKQTPKeyTop|JKQTPKeyLeft ,
  JKQTPKeyInsideTopRight =JKQTPKeyInside|JKQTPKeyTop|JKQTPKeyRight ,
  JKQTPKeyInsideTopLeft =JKQTPKeyInside|JKQTPKeyTop|JKQTPKeyLeft ,
  JKQTPKeyInsideBottomLeft =JKQTPKeyInside|JKQTPKeyBottom|JKQTPKeyLeft ,
  JKQTPKeyInsideBottomRight =JKQTPKeyInside|JKQTPKeyBottom|JKQTPKeyRight ,
  JKQTPKeyInsideTop =JKQTPKeyInside|JKQTPKeyTop|JKQTPKeyHCenter ,
  JKQTPKeyInsideBottom =JKQTPKeyInside|JKQTPKeyBottom|JKQTPKeyHCenter ,
  JKQTPKeyInsideLeft =JKQTPKeyInside|JKQTPKeyVCenter|JKQTPKeyLeft ,
  JKQTPKeyInsideRight =JKQTPKeyInside|JKQTPKeyVCenter|JKQTPKeyRight ,
  JKQTPKeyDefaultPosition =JKQTPKeyInsideTopRight
}
 position of the key More...
 
enum  JKQTPLabelPosition {
  JKQTPLabelMin =0 ,
  JKQTPLabelMax ,
  JKQTPLabelCenter ,
  JKQTPLabelMinBesides ,
  JKQTPLabelMaxBesides ,
  JKQTPLabelPositionMax =JKQTPLabelMaxBesides
}
 position of the axis labels More...
 
enum  JKQTPLabelTickMode {
  JKQTPLTMLinOrPower =0 ,
  JKQTPLTMLin ,
  JKQTPLTMPower ,
  JKQTPLTMmax =JKQTPLTMPower
}
 mode of the axis ticks More...
 
enum  JKQTPMouseDoubleClickActions {
  jkqtpdcaClickZoomsIn =0 ,
  jkqtpdcaClickZoomsOut ,
  jkqtpdcaClickOpensContextMenu ,
  jkqtpdcaClickOpensSpecialContextMenu ,
  jkqtpdcaClickMovesViewport
}
 actions that can be bound to a double-click of the mouse More...
 
enum  JKQTPMouseDragActions {
  jkqtpmdaPanPlotOnMove =0 ,
  jkqtpmdaPanPlotOnRelease ,
  jkqtpmdaZoomByRectangle ,
  jkqtpmdaDrawRectangleForEvent ,
  jkqtpmdaDrawCircleForEvent ,
  jkqtpmdaDrawEllipseForEvent ,
  jkqtpmdaDrawLineForEvent ,
  jkqtpmdaScribbleForEvents ,
  jkqtpmdaToolTipForClosestDataPoint ,
  jkqtpmdaRuler
}
 Availble action this JKQtPlotter can perform when mouse events occur. This allows you to e.g. draw rectangles or lines over the plot and receive a signal, when the drawing finishes. More...
 
enum  JKQTPMouseMoveActions { jkqtpmmaToolTipForClosestDataPoint }
 Availble action this JKQtPlotter can perform when mouse events occur. This allows you to e.g. draw rectangles or lines over the plot and receive a signal, when the drawing finishes. More...
 
enum  JKQTPMouseWheelActions {
  jkqtpmwaZoomByWheel =0 ,
  jkqtpmwaPanByWheel ,
  jkqtpmwaZoomByWheelAndTrackpadPan
}
 actions that can be bound to a mouse wheel event More...
 
enum class  JKQTPPlotStyleType {
  JKQTPPlotStyleType::Default ,
  JKQTPPlotStyleType::Barchart ,
  JKQTPPlotStyleType::Boxplot ,
  JKQTPPlotStyleType::Filled ,
  JKQTPPlotStyleType::Impulses ,
  JKQTPPlotStyleType::Geometric ,
  JKQTPPlotStyleType::Annotation ,
  JKQTPPlotStyleType::FinancialPositive ,
  JKQTPPlotStyleType::FinancialNegative
}
 used to specify teh type of graph when calling getPlotStyle() More...
 
enum  JKQTPUserActionMarkerType {
  jkqtpuamtCircle =0 ,
  jkqtpuamtCrossHair =1 ,
  jkqtpuamtCircleAndCrossHair =2
}
 Styles in which to mark single positions during user actions in JKQTPlotter. More...
 

Functions

JKQTPLOTTER_LIB_EXPORT void initJKQTBasePlotterResources ()
 initialized Qt-ressources necessary for JKQTBasePlotter
 
JKQTPLOTTER_LIB_EXPORT void initJKQTPlotterResources ()
 initialized Qt-ressources necessary for JKQTPlotter
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPCADrawMode2String (JKQTPCADrawMode pos)
 converts a JKQTPCADrawMode variable into a human-readable string
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPCALabelType2String (JKQTPCALabelType pos)
 converts a JKQTPCALabelType variable into a human-readable string
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPContextMenuModes2String (JKQTPContextMenuModes act)
 convert a JKQTPContextMenuModes to a QString
 
JKQTPLOTTER_LIB_EXPORT QList< JKQTPKeyPositionJKQTPGetTypicalKeyPositions ()
 returns a list of typical positions of the main key
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPKeyLayout2String (JKQTPKeyLayout pos)
 converts a JKQTPKeyLayout variable into a human-readable string
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPKeyPosition2String (JKQTPKeyPosition pos)
 converts a JKQTPLabelPosition variable into a human-readable string
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPLabelPosition2String (JKQTPLabelPosition pos)
 converts a JKQTPLabelPosition variable into a human-readable string
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPLabelTickMode2String (JKQTPLabelTickMode pos)
 converts a JKQTPLabelTickMode variable into a human-readable string
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseDoubleClickActions2String (JKQTPMouseDoubleClickActions act)
 convert a JKQTPMouseDoubleClickActions to a QString
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseDragActions2String (JKQTPMouseDragActions act)
 convert a JKQTPMouseDragActions to a QString
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseMoveActions2String (JKQTPMouseMoveActions act)
 convert a JKQTPMouseDragActions to a QString
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseWheelActions2String (JKQTPMouseWheelActions act)
 convert a JKQTPMouseWheelActions to a QString
 
JKQTPLOTTER_LIB_EXPORT QString JKQTPUserActionMarkerType2String (JKQTPUserActionMarkerType act)
 convert a JKQTPUserActionMarkerType to a QString
 
size_t qHash (const JKQTBasePlotter::textSizeKey &data, size_t)
 qHash()-specialization
 
QT_BEGIN_NAMESPACE size_t qHash (const QPair< Qt::MouseButton, Qt::KeyboardModifiers > &key, size_t)
 qHash-variant used by JKQTPlotter
 
size_t qHash (const Qt::KeyboardModifiers &key, size_t)
 qHash-variant used by JKQTPlotter
 
size_t qHash (const Qt::MouseButton &key, size_t)
 qHash-variant used by JKQTPlotter
 
JKQTPLOTTER_LIB_EXPORT JKQTPCADrawMode String2JKQTPCADrawMode (const QString &pos)
 converts a string into a JKQTPCADrawMode
 
JKQTPLOTTER_LIB_EXPORT JKQTPCALabelType String2JKQTPCALabelType (const QString &pos)
 converts a string into a JKQTPCALabelType
 
JKQTPLOTTER_LIB_EXPORT JKQTPContextMenuModes String2JKQTPContextMenuModes (const QString &act)
 convert a QString (created by JKQTPContextMenuModes2String() ) to JKQTPContextMenuModes
 
JKQTPLOTTER_LIB_EXPORT JKQTPKeyLayout String2JKQTPKeyLayout (const QString &pos)
 converts a String into a JKQTPKeyLayout
 
JKQTPLOTTER_LIB_EXPORT JKQTPKeyPosition String2JKQTPKeyPosition (const QString &pos)
 converts a string into a JKQTPLabelPosition
 
JKQTPLOTTER_LIB_EXPORT JKQTPLabelPosition String2JKQTPLabelPosition (const QString &pos)
 converts a string into a JKQTPLabelPosition
 
JKQTPLOTTER_LIB_EXPORT JKQTPLabelTickMode String2JKQTPLabelTickMode (const QString &pos)
 converts a string into a JKQTPLabelTickMode
 
JKQTPLOTTER_LIB_EXPORT JKQTPMouseDoubleClickActions String2JKQTPMouseDoubleClickActions (const QString &act)
 convert a QString (created by JKQTPMouseDoubleClickActions2String() ) to JKQTPMouseDoubleClickActions
 
JKQTPLOTTER_LIB_EXPORT JKQTPMouseDragActions String2JKQTPMouseDragActions (const QString &button)
 convert a QString (created by JKQTPMouseDragActions2String() ) to JKQTPMouseDragActions
 
JKQTPLOTTER_LIB_EXPORT JKQTPMouseMoveActions String2JKQTPMouseMoveActions (const QString &button)
 convert a QString (created by JKQTPMouseDragActions2String() ) to JKQTPMouseDragActions
 
JKQTPLOTTER_LIB_EXPORT JKQTPMouseWheelActions String2JKQTPMouseWheelActions (const QString &act)
 convert a QString (created by JKQTPMouseWheelActions2String() ) to JKQTPMouseWheelActions
 
JKQTPLOTTER_LIB_EXPORT JKQTPUserActionMarkerType String2JKQTPUserActionMarkerType (const QString &act)
 convert a QString (created by JKQTPUserActionMarkerType2String() ) to JKQTPUserActionMarkerType
 

Detailed Description


Class Documentation

◆ JKQTPGridPrintingItem

struct JKQTPGridPrintingItem

used to represent the position of other graphs in Saving and Printing Graphs

Collaboration diagram for JKQTPGridPrintingItem:
[legend]
Class Members
JKQTBasePlotter * plotter JKQTBasePlotter.
size_t x logic x-position of a graph, relative to the current JKQtPlotter
size_t y logic y-position of a graph, relative to the current JKQtPlotter

Macro Definition Documentation

◆ JKQTPLOTTER_COMPILE_WITHOUT_PRINTSUPPORT

#define JKQTPLOTTER_COMPILE_WITHOUT_PRINTSUPPORT

This is defined if JKQtPlotter shall be compiled without print-support, or print-support is not available.

This can be used by surrounding code that requires print-support with

#ifndef JKQTPLOTTER_COMPILE_WITHOUT_PRINTSUPPORT
// ...
// Code that require Print Support
// ...
#endif

◆ JKQTPLOTTER_LIB_EXPORT

#define JKQTPLOTTER_LIB_EXPORT   Q_DECL_EXPORT

This define allows to export functions and classes from the jkqtcommon-library when building a dynamic/shared library. Usage is as follows:

#include "jkqtplotter/jkqtplotter_imexport.h.h"
class JKQTPLOTTER_LIB_EXPORT exportedClassName {
...
};
JKQTPLOTTER_LIB_EXPORT void exportedFunctionName();
#define JKQTPLOTTER_LIB_EXPORT
Definition jkqtplotter_imexport.h:89

These macros append the appropriate Q_DECL_EXPORT and Q_DECL_IMPORT to the function/class body and thus tell windows compilers to export these sysmbols from the shared library, or import them from a shared library.

Note that these attributes are only necessary on windows systems!

These macros are controlled by two other macros:

  • JKQTPLOTTER_LIB_IN_DLL declares that the application should link against a shared version of JKQTPlotter, i.e. JKQTPlotterSharedLib_XYZ . This needs to be defined while compiling the library and while compiling any application linking against JKQTPlotterSharedLib_XYZ.
  • JKQTPLOTTER_LIB_EXPORT_LIBRARY is only defined while compiling JKQTPlotter into JKQTPlotterSharedLib_XYZ and ensures thet the symbols are exported. If it is not defined (e.g. while compiling an application), the symbols are imported .

◆ JKQTPLOTTER_LIB_EXPORT_LIBRARY

#define JKQTPLOTTER_LIB_EXPORT_LIBRARY

is only defined while compiling JKQTPlotter into JKQTPlotterSharedLib_XYZ and ensures thet the symbols are exported. If it is not defined (e.g. while compiling an application), the symbols are imported

◆ JKQTPLOTTER_LIB_IN_DLL

#define JKQTPLOTTER_LIB_IN_DLL

declares that the application should link against a shared version of JKQTPlotter, i.e. JKQTPlotterSharedLib_XYZ . This needs to be defined while compiling the library and while compiling any application linking against JKQTPlotterSharedLib_XYZ.

◆ JKQTPLOTTER_WORKAROUND_QGADGET_BUG

#define JKQTPLOTTER_WORKAROUND_QGADGET_BUG

This #define is used to work around a bug in Qt when compiled with CLANG (see https://bugreports.qt.io/browse/QTBUG-104874): Multiple inheritance does not work with Q_GADGET in this setup.

This can be used by surrounding code that causes compile-errors due to this bug with

#ifndef JKQTPLOTTER_COMPILE_WITHOUT_PRINTSUPPORT
// ...
// Code that require Print Support
// ...
#endif

Typedef Documentation

◆ JKQTPCoordinateAxisRef

type for indexing coordinate axes in a plot

◆ JKQTPKeyPosition

position of the key

Note
The JKQTPKeyPosition type is a typedef for QFlags< JKQTPKeyPositions >. It stores an OR (|| ) combination of JKQTPKeyPositions values.
See also
JKQTPKeyPositions, JKQTPKeyStyle, JKQTPKeyBase, JKQTPGetTypicalKeyPositions()

◆ JKQTPMouseDoubleClickActionsHashMap

typedef QHash<QPair<Qt::MouseButton,Qt::KeyboardModifiers>, JKQTPMouseDoubleClickActions> JKQTPMouseDoubleClickActionsHashMap

data structure for storage of assigned JKQTPMouseDoubleClickActions

See also
JKQTPMouseDoubleClickActionsHashMapIterator

◆ JKQTPMouseDoubleClickActionsHashMapIterator

typedef JKQTPMouseDoubleClickActionsHashMap::const_iterator JKQTPMouseDoubleClickActionsHashMapIterator

iterator for JKQTPMouseDoubleClickActionsHashMap

See also
JKQTPMouseDoubleClickActionsHashMap

◆ JKQTPMouseDragActionsHashMap

typedef QHash<QPair<Qt::MouseButton,Qt::KeyboardModifiers>, JKQTPMouseDragActions> JKQTPMouseDragActionsHashMap

data structure for storage of assigned JKQTPMouseDragActions

See also
JKQTPMouseDragActionsHashMapIterator

◆ JKQTPMouseDragActionsHashMapIterator

typedef JKQTPMouseDragActionsHashMap::const_iterator JKQTPMouseDragActionsHashMapIterator

iterator for JKQTPMouseDragActionsHashMap

See also
JKQTPMouseDragActionsHashMap

◆ JKQTPMouseMoveActionsHashMap

typedef QHash<Qt::KeyboardModifiers, JKQTPMouseMoveActions> JKQTPMouseMoveActionsHashMap

data structure for storage of assigned JKQTPMouseMoveActions

See also
JKQTPMouseMoveActionsHashMapIterator

◆ JKQTPMouseMoveActionsHashMapIterator

typedef JKQTPMouseMoveActionsHashMap::const_iterator JKQTPMouseMoveActionsHashMapIterator

iterator for JKQTPMouseMoveActionsHashMap

See also
JKQTPMouseMoveActionsHashMap

◆ JKQTPMouseWheelActionsHashMap

typedef QHash<Qt::KeyboardModifiers, JKQTPMouseWheelActions> JKQTPMouseWheelActionsHashMap

data structure for storage of assigned JKQTPMouseWheelActions

See also
JKQTPMouseWheelActionsHashMapIterator

◆ JKQTPMouseWheelActionsHashMapIterator

typedef JKQTPMouseWheelActionsHashMap::const_iterator JKQTPMouseWheelActionsHashMapIterator

iterator for JKQTPMouseWheelActionsHashMap

See also
JKQTPMouseWheelActionsHashMap

Enumeration Type Documentation

◆ JKQTPCADrawModeElements

drawing flags for a coordinate axis

Note
This enum provides the elements for JKQTPCADrawMode, which is actually used throughout the code.
See also
JKQTPCADrawMode, JKQTPCoordinateAxisStyle
Enumerator
JKQTPCADMLine 

draw axis as thick line

JKQTPCADMTicks 

draw axis ticks

JKQTPCADMTickLabels 

draw axis tick labels

JKQTPCADMAxisLabel 

draw axis axis Label

JKQTPCADMMaxArrow 

an open arrow at the max-end of the axis

JKQTPCADMMaxFilledArrow 

draw a filled arrow at the max-end of the axis

JKQTPCADMMinArrow 

an open arrow at the end of the axis at the min-end of the axis

JKQTPCADMMinFilledArrow 

draw a filled arrow at the min-end of the axis

JKQTPCADMLineTicksTickLabels 

draw axis with ticks, line and tick labels

JKQTPCADMLineTicks 

draw axis with ticks and line

JKQTPCADMTicksTickLabelsAxisLabel 

draw axis with ticks, tick labels and axisLabel

JKQTPCADMTicksTickLabels 

draw axis with ticks and tick labels

JKQTPCADMTickLabelsAxisLabel 

draw axis tick labels and axisLabel

JKQTPCADMnone 

draw no axis

JKQTPCADMcomplete 

draw axis withline, ticks, ticklabels and axis label

JKQTPCADMcompleteMaxArrow 

draw axis withline, ticks, ticklabels and axis label and an arrow pointing to the max-side of the axis

JKQTPCADMcompleteMinMaxArrow 

draw axis withline, ticks, ticklabels and axis label and arrows pointing to the min and max side of the axis

◆ JKQTPCALabelType

display mode for the (axis) labels

Enumerator
JKQTPCALTdefault 

simply print the numbers

JKQTPCALTscientific 

print the numbers in scientific notation, e.g. "1.23e-4"

JKQTPCALTexponentCharacter 

print the numbers and show a unit character, i.e. 5μ for $ 5\cdot 10^{-6} $ , 3k for $ 3\cdot 10^3 $ ...

JKQTPCALTexponent 

show numbers in exponential for, e.g. $ 3\cdot 10^5 $ ...

JKQTPCALTprintf 

generate axis label from an arbitrary "printf" formatting string (see e.g. https://en.wikipedia.org/wiki/Printf_format_string ). The first data parameter is the tick value as double an the second is tickUnitName as string. The following image shows an example for "y=%+.2f":

JKQTPCALTdate 

show numbers as dates

JKQTPCALTtime 

show numbers as times

JKQTPCALTdatetime 

show numbers as times

JKQTPCALTfrac 

show numbers as fraction, the number is first rounded to the given precision and then a fraction is calculated and displayed like $ \frac{1}{2} $

JKQTPCALTslashfrac 

show numbers as fraction, the number is first rounded to the given precision and then a fraction is calculated and displayed like 1/2

JKQTPCALTsfrac 

show numbers as fraction, the number is first rounded to the given precision and then a fraction is calculated and displayed using \sfrac{1}{2}

JKQTPCALTintfrac 

show numbers as integral+fraction, the number is first rounded to the given precision and then a fraction is calculated and displayed like $ -3\frac{1}{2} $

JKQTPCALTintslashfrac 

show numbers as integral+fraction, the number is first rounded to the given precision and then a fraction is calculated and displayed like 1/2

JKQTPCALTintsfrac 

show numbers as integral+fraction, the number is first rounded to the given precision and then a fraction is calculated and displayed using \sfrac{1}{2}

JKQTPCALTformat 

generate axis label from an arbitrary "std::format" formatting string (see e.g. https://en.cppreference.com/w/cpp/utility/format/formatter#Standard_format_specification ). The first data parameter is the tick value as double an the second is tickUnitName as string. The following image shows an example for "\\texttt{{ y={:*^+8.1f}}}":

NOte: This option is only available for C++20 and above, use the CMake option JKQtPlotter_ENABLED_CXX20=ON if your compiler supports this.

JKQTPCALTcount 
JKQTPCALTmax 

◆ JKQTPContextMenuModes

modes for the context menu

Enumerator
jkqtpcmmStandardContextMenu 

only show the standard context menu

Zooming with the mouse
jkqtpcmmSpecialContextMenu 

only show the special context menu

See also
setSpecialContextMenu()
jkqtpcmmStandardAndSpecialContextMenu 

show the standard context menu, with the special context menu incorporated

See also
setSpecialContextMenu()
jkqtpcmmNoContextMenu 

don't show a context menu at all

◆ JKQTPCoordinateAxes

enum JKQTPCoordinateAxes : uint8_t

named references for different oordinate axes in the plot

Enumerator
JKQTPPrimaryAxis 
JKQTPSecondaryAxis 

◆ JKQTPKeyLayout

layout of the key

Enumerator
JKQTPKeyLayoutOneColumn 

the key consists of one column. This may overflow the available space, use JKQTPKeyLayoutMultiColumn or JKQTPKeyLayoutMultiRow if you have many entries!

JKQTPKeyLayoutOneRow 

the key consists of one row. This may overflow the available space, use JKQTPKeyLayoutMultiColumn or JKQTPKeyLayoutMultiRow if you have many entries!

JKQTPKeyLayoutMultiColumn 

the key items are distributed over multiple columns that fill the available space, (top->bottom, top->bottom, ...)

JKQTPKeyLayoutMultiRow 

the key items are distributed over multiple rows that fill the available space (left->right,left->right,...)

JKQTPKeyLayoutMax 

◆ JKQTPKeyPositions

position of the key

See also
JKQTPKeyPosition, JKQTPKeyStyle, JKQTPKeyBase, JKQTPGetTypicalKeyPositions()
Enumerator
JKQTPKeyInside 

key is drawn inside the plot rectangle

JKQTPKeyOutsideTop 

key is drawn outside and above of the plot rectangle

JKQTPKeyOutsideBottom 

key is drawn outside and below of the plot rectangle

JKQTPKeyOutsideLeft 

key is drawn outside and on the left of the plot rectangle

JKQTPKeyOutsideRight 

key is drawn outside and on the rightof the plot rectangle

JKQTPKeyLeft 

key is drawn to the left

JKQTPKeyHCenter 

key is drawn to the horizontal center

JKQTPKeyRight 

key is drawn to the right

JKQTPKeyTop 

key is drawn to the top

JKQTPKeyVCenter 

key is drawn to the vertical center

JKQTPKeyBottom 

key is drawn to the bottom

JKQTPKeyOutsideTopRight 

the key is positioned above the graph, on the right

JKQTPKeyOutsideTopLeft 

the key is positioned above the graph, on the left

JKQTPKeyOutsideTopCenter 

the key is positioned above the graph, in the center

JKQTPKeyOutsideBottomLeft 

the key is positioned below the graph, on the left

JKQTPKeyOutsideBottomRight 

the key is positioned below the graph, on the right

JKQTPKeyOutsideBottomCenter 

the key is positioned below the graph, in the center

JKQTPKeyOutsideLeftTop 

the key is positioned on the left side of the graph, towards the top

JKQTPKeyOutsideLeftCenter 

the key is positioned on the left side of the graph, in the center

JKQTPKeyOutsideLeftBottom 

the key is positioned on the left side of the graph, towards the Bottom

JKQTPKeyOutsideRightBottom 

the key is positioned on the right side of the graph, towards the bottom

JKQTPKeyOutsideRightCenter 

the key is positioned on the right side of the graph, in the center

JKQTPKeyOutsideRightTop 

the key is positioned on the left side of the graph, towards the top

JKQTPKeyInsideTopRight 

the key is positioned inside on the top-right

JKQTPKeyInsideTopLeft 

the key is positioned inside on the top-left

JKQTPKeyInsideBottomLeft 

the key is positioned inside on the bottom-left

JKQTPKeyInsideBottomRight 

the key is positioned inside on the bottom-right

JKQTPKeyInsideTop 

the key is positioned inside on the top-center

JKQTPKeyInsideBottom 

the key is positioned inside on the bottom-center

JKQTPKeyInsideLeft 

the key is positioned inside on the center-left

JKQTPKeyInsideRight 

the key is positioned inside on the center-right

JKQTPKeyDefaultPosition 

◆ JKQTPLabelPosition

position of the axis labels

Enumerator
JKQTPLabelMin 

the axis label is near the min value of the axis (left/bottom)

JKQTPLabelMax 

the axis label is near the max value of the axis (right/top)

JKQTPLabelCenter 

the label is at the center of the axis

JKQTPLabelMinBesides 

the axis label is near the min value of the axis (left/bottom), but besides the axis tip

JKQTPLabelMaxBesides 

the axis label is near the max value of the axis (right/top), but besides the axis tip

JKQTPLabelPositionMax 

◆ JKQTPLabelTickMode

mode of the axis ticks

Enumerator
JKQTPLTMLinOrPower 

linear, or log, depending on whether the axis is log

JKQTPLTMLin 

always linear (even for log-axes)

JKQTPLTMPower 

powers (of the log-base)

JKQTPLTMmax 

◆ JKQTPMouseDoubleClickActions

actions that can be bound to a double-click of the mouse

Enumerator
jkqtpdcaClickZoomsIn 

a double-click zooms into the plot at the current mouse location

jkqtpdcaClickZoomsOut 

a double-click zooms out of the plot at the current mouse location

jkqtpdcaClickOpensContextMenu 

a double-click opens the context menu

jkqtpdcaClickOpensSpecialContextMenu 

a double-click opens the special context menu

See also
setSpecialContextMenu()
jkqtpdcaClickMovesViewport 

a double-click centers the x/y-range around the clicked position

◆ JKQTPMouseDragActions

Availble action this JKQtPlotter can perform when mouse events occur. This allows you to e.g. draw rectangles or lines over the plot and receive a signal, when the drawing finishes.

Enumerator
jkqtpmdaPanPlotOnMove 

the user can drag the current plot window while keeping the left mouse-button pushed down (=panning), the new widow is applied/displayed whenever the mouse moves

Drag the Plot Viewport
jkqtpmdaPanPlotOnRelease 

the user can drag the current plot window while keeping the left mouse-button pushed down (=panning), the new widow is applied/displayed when the left mouse button is released

jkqtpmdaZoomByRectangle 

draw a rectangle and when finish zoom to that rectangle

jkqtpmdaDrawRectangleForEvent 

draw a rectangle and when finished execute the signal JKQTPlotter::userRectangleFinished()

Draw Rectangle User-Action
jkqtpmdaDrawCircleForEvent 

draw a circle and when finished execute the signal JKQTPlotter::userCircleFinished()

Draw Circle User-Action
jkqtpmdaDrawEllipseForEvent 

draw an ellipse and when finished execute the signal JKQTPlotter::userEllipseFinished()

Draw Ellipse User-Action


jkqtpmdaDrawLineForEvent 

draw a line and when finished execute the signal JKQTPlotter::userLineFinished()

Draw Lines User-Action
jkqtpmdaScribbleForEvents 

let the user scribble on the plot (left mouse button is kept pressed) and call JKQTPlotter::userScribbleClick() for each new position

jkqtpmdaToolTipForClosestDataPoint 

shows a tooltip with data of the closest data-point in the plot

jkqtpmdaRuler 

shows a ruler over the plot, which measures delta X, delta Y and sqrt(dx^2+dy^2)

◆ JKQTPMouseMoveActions

Availble action this JKQtPlotter can perform when mouse events occur. This allows you to e.g. draw rectangles or lines over the plot and receive a signal, when the drawing finishes.

Enumerator
jkqtpmmaToolTipForClosestDataPoint 

shows a tooltip with data of the closest data-point in the plot

◆ JKQTPMouseWheelActions

actions that can be bound to a mouse wheel event

Enumerator
jkqtpmwaZoomByWheel 

use the mouse-wheel for zooming

jkqtpmwaPanByWheel 

use the mouse-wheel for panning the plot

jkqtpmwaZoomByWheelAndTrackpadPan 

use the mouse-wheel for zooming. In addition, this tries to recognize track-pad pan gestures and applies them.

Note
This is needed, because Qt converts track-pad zoom AND pan gestures to wheelEvents, but does not provide the source. Therefore a heuristics is required to interpret both!

◆ JKQTPPlotStyleType

enum class JKQTPPlotStyleType
strong

used to specify teh type of graph when calling getPlotStyle()

Enumerator
Default 

general graphs

Barchart 

barchart-type graphs

Boxplot 

boxplot-type graphs

Filled 

filled graphs

Impulses 

impulse-type graphs

Geometric 

geometric elements (e.g. rectangles, circles, lines, ...)

Annotation 

annotation elements

FinancialPositive 

financial positive elements

FinancialNegative 

financial negative elements

◆ JKQTPUserActionMarkerType

Styles in which to mark single positions during user actions in JKQTPlotter.

Enumerator
jkqtpuamtCircle 

a small circle around the position to mark

jkqtpuamtCrossHair 

a cross-hair to the position to mark

jkqtpuamtCircleAndCrossHair 

a cross-hair to the position to mark, with a circle-marker around the actual target (i.e. combines jkqtpuamtCircle and jkqtpuamtCrossHair)

Function Documentation

◆ initJKQTBasePlotterResources()

JKQTPLOTTER_LIB_EXPORT void initJKQTBasePlotterResources ( )

initialized Qt-ressources necessary for JKQTBasePlotter

◆ initJKQTPlotterResources()

JKQTPLOTTER_LIB_EXPORT void initJKQTPlotterResources ( )

initialized Qt-ressources necessary for JKQTPlotter

◆ JKQTPCADrawMode2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPCADrawMode2String ( JKQTPCADrawMode  pos)

converts a JKQTPCADrawMode variable into a human-readable string

◆ JKQTPCALabelType2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPCALabelType2String ( JKQTPCALabelType  pos)

converts a JKQTPCALabelType variable into a human-readable string

◆ JKQTPContextMenuModes2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPContextMenuModes2String ( JKQTPContextMenuModes  act)

convert a JKQTPContextMenuModes to a QString

See also
String2JKQTPContextMenuModes(), JKQTPContextMenuModes

◆ JKQTPGetTypicalKeyPositions()

JKQTPLOTTER_LIB_EXPORT QList< JKQTPKeyPosition > JKQTPGetTypicalKeyPositions ( )

returns a list of typical positions of the main key

Note
The JKQTPKeyPosition type is a typedef for QFlags< JKQTPKeyPositions >. It stores an OR (|| ) combination of JKQTPKeyPositions values.
See also
JKQTPKeyPositions, JKQTPKeyStyle, JKQTPKeyBase

◆ JKQTPKeyLayout2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPKeyLayout2String ( JKQTPKeyLayout  pos)

converts a JKQTPKeyLayout variable into a human-readable string

◆ JKQTPKeyPosition2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPKeyPosition2String ( JKQTPKeyPosition  pos)

converts a JKQTPLabelPosition variable into a human-readable string

◆ JKQTPLabelPosition2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPLabelPosition2String ( JKQTPLabelPosition  pos)

converts a JKQTPLabelPosition variable into a human-readable string

◆ JKQTPLabelTickMode2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPLabelTickMode2String ( JKQTPLabelTickMode  pos)

converts a JKQTPLabelTickMode variable into a human-readable string

◆ JKQTPMouseDoubleClickActions2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseDoubleClickActions2String ( JKQTPMouseDoubleClickActions  act)

convert a JKQTPMouseDoubleClickActions to a QString

See also
String2JKQTPMouseDoubleClickActions(), JKQTPMouseDoubleClickActions

◆ JKQTPMouseDragActions2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseDragActions2String ( JKQTPMouseDragActions  act)

convert a JKQTPMouseDragActions to a QString

See also
String2JKQTPMouseDragActions(), JKQTPMouseDragActions

◆ JKQTPMouseMoveActions2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseMoveActions2String ( JKQTPMouseMoveActions  act)

convert a JKQTPMouseDragActions to a QString

See also
String2JKQTPMouseDragActions(), JKQTPMouseDragActions

◆ JKQTPMouseWheelActions2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPMouseWheelActions2String ( JKQTPMouseWheelActions  act)

convert a JKQTPMouseWheelActions to a QString

See also
String2JKQTPMouseWheelActions(), JKQTPMouseWheelActions

◆ JKQTPUserActionMarkerType2String()

JKQTPLOTTER_LIB_EXPORT QString JKQTPUserActionMarkerType2String ( JKQTPUserActionMarkerType  act)

convert a JKQTPUserActionMarkerType to a QString

See also
String2JKQTPUserActionMarkerType(), JKQTPUserActionMarkerType

◆ qHash() [1/4]

size_t qHash ( const JKQTBasePlotter::textSizeKey data,
size_t   
)
inline

qHash()-specialization

◆ qHash() [2/4]

QT_BEGIN_NAMESPACE size_t qHash ( const QPair< Qt::MouseButton, Qt::KeyboardModifiers > &  key,
size_t   
)
inline

qHash-variant used by JKQTPlotter

◆ qHash() [3/4]

size_t qHash ( const Qt::KeyboardModifiers &  key,
size_t   
)
inline

qHash-variant used by JKQTPlotter

◆ qHash() [4/4]

size_t qHash ( const Qt::MouseButton &  key,
size_t   
)
inline

qHash-variant used by JKQTPlotter

◆ String2JKQTPCADrawMode()

JKQTPLOTTER_LIB_EXPORT JKQTPCADrawMode String2JKQTPCADrawMode ( const QString &  pos)

converts a string into a JKQTPCADrawMode

◆ String2JKQTPCALabelType()

JKQTPLOTTER_LIB_EXPORT JKQTPCALabelType String2JKQTPCALabelType ( const QString &  pos)

converts a string into a JKQTPCALabelType

◆ String2JKQTPContextMenuModes()

JKQTPLOTTER_LIB_EXPORT JKQTPContextMenuModes String2JKQTPContextMenuModes ( const QString &  act)

convert a QString (created by JKQTPContextMenuModes2String() ) to JKQTPContextMenuModes

See also
JKQTPContextMenuModes2String(), JKQTPContextMenuModes

◆ String2JKQTPKeyLayout()

JKQTPLOTTER_LIB_EXPORT JKQTPKeyLayout String2JKQTPKeyLayout ( const QString &  pos)

converts a String into a JKQTPKeyLayout

◆ String2JKQTPKeyPosition()

JKQTPLOTTER_LIB_EXPORT JKQTPKeyPosition String2JKQTPKeyPosition ( const QString &  pos)

converts a string into a JKQTPLabelPosition

◆ String2JKQTPLabelPosition()

JKQTPLOTTER_LIB_EXPORT JKQTPLabelPosition String2JKQTPLabelPosition ( const QString &  pos)

converts a string into a JKQTPLabelPosition

◆ String2JKQTPLabelTickMode()

JKQTPLOTTER_LIB_EXPORT JKQTPLabelTickMode String2JKQTPLabelTickMode ( const QString &  pos)

converts a string into a JKQTPLabelTickMode

◆ String2JKQTPMouseDoubleClickActions()

JKQTPLOTTER_LIB_EXPORT JKQTPMouseDoubleClickActions String2JKQTPMouseDoubleClickActions ( const QString &  act)

◆ String2JKQTPMouseDragActions()

JKQTPLOTTER_LIB_EXPORT JKQTPMouseDragActions String2JKQTPMouseDragActions ( const QString &  button)

convert a QString (created by JKQTPMouseDragActions2String() ) to JKQTPMouseDragActions

See also
JKQTPMouseDragActions2String(), JKQTPMouseDragActions

◆ String2JKQTPMouseMoveActions()

JKQTPLOTTER_LIB_EXPORT JKQTPMouseMoveActions String2JKQTPMouseMoveActions ( const QString &  button)

convert a QString (created by JKQTPMouseDragActions2String() ) to JKQTPMouseDragActions

See also
JKQTPMouseDragActions2String(), JKQTPMouseDragActions

◆ String2JKQTPMouseWheelActions()

JKQTPLOTTER_LIB_EXPORT JKQTPMouseWheelActions String2JKQTPMouseWheelActions ( const QString &  act)

convert a QString (created by JKQTPMouseWheelActions2String() ) to JKQTPMouseWheelActions

See also
JKQTPMouseWheelActions2String(), JKQTPMouseWheelActions

◆ String2JKQTPUserActionMarkerType()

JKQTPLOTTER_LIB_EXPORT JKQTPUserActionMarkerType String2JKQTPUserActionMarkerType ( const QString &  act)

convert a QString (created by JKQTPUserActionMarkerType2String() ) to JKQTPUserActionMarkerType

See also
JKQTPUserActionMarkerType2String(), JKQTPUserActionMarkerType