ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
qcustomplot.h File Reference
#include <QtCore/qglobal.h>
#include <QtCompat.h>
#include <qmath.h>
#include <QtCore/QCache>
#include <QtCore/QDateTime>
#include <QtCore/QDebug>
#include <QtCore/QFlags>
#include <QtCore/QMargins>
#include <QtCore/QMultiMap>
#include <QtCore/QObject>
#include <QtCore/QPointer>
#include <QtCore/QStack>
#include <QtCore/QString>
#include <QtCore/QVector>
#include <QtGui/QMouseEvent>
#include <QtGui/QPaintEvent>
#include <QtGui/QPainter>
#include <QtGui/QPainterPath>
#include <QtGui/QPixmap>
#include <QtGui/QVector2D>
#include <QtGui/QWheelEvent>
#include <algorithm>
#include <limits>
#include <QtNumeric>
#include <QtPrintSupport/QtPrintSupport>
#include <QtWidgets/QWidget>
#include <QtCore/QElapsedTimer>
#include <QtCore/QTimeZone>
Include dependency graph for qcustomplot.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  QCPScatterStyle
 Represents the visual appearance of scatter points. More...
 
class  QCPPainter
 QPainter subclass used internally. More...
 
class  QCPLayer
 A layer that may contain objects, to control the rendering order. More...
 
class  QCPLayerable
 Base class for all drawable objects. More...
 
class  QCPRange
 Represents the range an axis is encompassing. More...
 
class  QCPMarginGroup
 A margin group allows synchronization of margin sides if working with multiple layout elements. More...
 
class  QCPLayoutElement
 The abstract base class for all objects that form the layout system. More...
 
class  QCPLayout
 The abstract base class for layouts. More...
 
class  QCPLayoutGrid
 A layout that arranges child elements in a grid. More...
 
class  QCPLayoutInset
 A layout that places child elements aligned to the border or arbitrarily positioned. More...
 
class  QCPLineEnding
 Handles the different ending decorations for line-like items. More...
 
class  QCPGrid
 Responsible for drawing the grid of a QCPAxis. More...
 
class  QCPAxis
 Manages a single axis inside a QCustomPlot. More...
 
class  QCPAbstractPlottable
 The abstract base class for all data representing objects in a plot. More...
 
class  QCPItemAnchor
 An anchor of an item to which positions can be attached to. More...
 
class  QCPItemPosition
 Manages the position of an item. More...
 
class  QCPAbstractItem
 The abstract base class for all items in a plot. More...
 
class  QCustomPlot
 The central class of the library. This is the QWidget which displays the plot and interacts with the user. More...
 
class  QCPColorGradient
 Defines a color gradient for use with e.g. QCPColorMap. More...
 
class  QCPAxisRect
 Holds multiple axes and arranges them in a rectangular shape. More...
 
class  QCPAbstractLegendItem
 The abstract base class for all entries in a QCPLegend. More...
 
class  QCPPlottableLegendItem
 A legend item representing a plottable with an icon and the plottable name. More...
 
class  QCPLegend
 Manages a legend inside a QCustomPlot. More...
 
class  QCPPlotTitle
 A layout element displaying a plot title text. More...
 
class  QCPColorScale
 A color scale for use with color coding data such as QCPColorMap. More...
 
class  QCPData
 Holds the data of one single data point for QCPGraph. More...
 
class  QCPGraph
 A plottable representing a graph in a plot. More...
 
class  QCPCurveData
 Holds the data of one single data point for QCPCurve. More...
 
class  QCPCurve
 A plottable representing a parametric curve in a plot. More...
 
class  QCPBarsGroup
 Groups multiple QCPBars together so they appear side by side. More...
 
class  QCPBarData
 Holds the data of one single data point (one bar) for QCPBars. More...
 
class  QCPBars
 A plottable representing a bar chart in a plot. More...
 
class  QCPStatisticalBox
 A plottable representing a single statistical box in a plot. More...
 
class  QCPColorMapData
 Holds the two-dimensional data of a QCPColorMap plottable. More...
 
class  QCPColorMap
 A plottable representing a two-dimensional color map in a plot. More...
 
class  QCPFinancialData
 Holds the data of one single data point for QCPFinancial. More...
 
class  QCPFinancial
 A plottable representing a financial stock chart. More...
 
class  QCPItemStraightLine
 A straight line that spans infinitely in both directions. More...
 
class  QCPItemLine
 A line from one point to another. More...
 
class  QCPItemCurve
 A curved line from one point to another. More...
 
class  QCPItemRect
 A rectangle. More...
 
class  QCPItemText
 A text label. More...
 
class  QCPItemEllipse
 An ellipse. More...
 
class  QCPItemPixmap
 An arbitrary pixmap. More...
 
class  QCPItemTracer
 Item that sticks to QCPGraph data points. More...
 
class  QCPItemBracket
 A bracket for referencing/highlighting certain parts in the plot. More...
 

Namespaces

 QCP
 

Macros

#define QCP_DEVICEPIXELRATIO_SUPPORTED
 
#define QCP_DEVICEPIXELRATIO_FLOAT
 
#define QCP_LIB_DECL
 
#define Q_DECL_OVERRIDE
 

Typedefs

typedef QMap< double, QCPDataQCPDataMap
 
typedef QMapIterator< double, QCPDataQCPDataMapIterator
 
typedef QMutableMapIterator< double, QCPDataQCPDataMutableMapIterator
 
typedef QMap< double, QCPCurveDataQCPCurveDataMap
 
typedef QMapIterator< double, QCPCurveDataQCPCurveDataMapIterator
 
typedef QMutableMapIterator< double, QCPCurveDataQCPCurveDataMutableMapIterator
 
typedef QMap< double, QCPBarDataQCPBarDataMap
 
typedef QMapIterator< double, QCPBarDataQCPBarDataMapIterator
 
typedef QMutableMapIterator< double, QCPBarDataQCPBarDataMutableMapIterator
 
typedef QMap< double, QCPFinancialDataQCPFinancialDataMap
 
typedef QMapIterator< double, QCPFinancialDataQCPFinancialDataMapIterator
 
typedef QMutableMapIterator< double, QCPFinancialDataQCPFinancialDataMutableMapIterator
 

Enumerations

enum  QCP::MarginSide {
  QCP::msLeft = 0x01 , QCP::msRight = 0x02 , QCP::msTop = 0x04 , QCP::msBottom = 0x08 ,
  QCP::msAll = 0xFF , QCP::msNone = 0x00 , QCP::msLeft = 0x01 , QCP::msRight = 0x02 ,
  QCP::msTop = 0x04 , QCP::msBottom = 0x08 , QCP::msAll = 0xFF , QCP::msNone = 0x00
}
 
enum  QCP::AntialiasedElement {
  QCP::aeAxes = 0x0001 , QCP::aeGrid = 0x0002 , QCP::aeSubGrid = 0x0004 , QCP::aeLegend = 0x0008 ,
  QCP::aeLegendItems = 0x0010 , QCP::aePlottables = 0x0020 , QCP::aeItems = 0x0040 , QCP::aeScatters = 0x0080 ,
  QCP::aeFills = 0x0100 , QCP::aeZeroLine = 0x0200 , QCP::aeOther = 0x8000 , QCP::aeAll = 0xFFFF ,
  QCP::aeNone = 0x0000 , QCP::aeAxes = 0x0001 , QCP::aeGrid = 0x0002 , QCP::aeSubGrid = 0x0004 ,
  QCP::aeLegend = 0x0008 , QCP::aeLegendItems = 0x0010 , QCP::aePlottables = 0x0020 , QCP::aeItems = 0x0040 ,
  QCP::aeScatters = 0x0080 , QCP::aeErrorBars = 0x0100 , QCP::aeFills = 0x0100 , QCP::aeZeroLine = 0x0200 ,
  QCP::aeAll = 0xFFFF , QCP::aeNone = 0x0000
}
 
enum  QCP::PlottingHint {
  QCP::phNone = 0x000 , QCP::phFastPolylines , QCP::phImmediateRefresh , QCP::phCacheLabels = 0x004 ,
  QCP::phNone = 0x000 , QCP::phFastPolylines , QCP::phForceRepaint , QCP::phCacheLabels = 0x004
}
 
enum  QCP::Interaction {
  QCP::iRangeDrag = 0x001 , QCP::iRangeZoom = 0x002 , QCP::iMultiSelect , QCP::iSelectPlottables ,
  QCP::iSelectAxes = 0x010 , QCP::iSelectLegend = 0x020 , QCP::iSelectItems = 0x040 , QCP::iSelectOther ,
  QCP::iRangeDrag = 0x001 , QCP::iRangeZoom = 0x002 , QCP::iMultiSelect , QCP::iSelectPlottables ,
  QCP::iSelectAxes = 0x010 , QCP::iSelectLegend = 0x020 , QCP::iSelectItems = 0x040 , QCP::iSelectOther
}
 

Functions

bool QCP::isInvalidData (double value)
 
bool QCP::isInvalidData (double value1, double value2)
 
void QCP::setMarginValue (QMargins &margins, QCP::MarginSide side, int value)
 
int QCP::getMarginValue (const QMargins &margins, QCP::MarginSide side)
 
 Q_DECLARE_TYPEINFO (QCPScatterStyle, Q_MOVABLE_TYPE)
 
 Q_DECLARE_TYPEINFO (QCPRange, Q_MOVABLE_TYPE)
 
const QCPRange operator+ (const QCPRange &range, double value)
 
const QCPRange operator+ (double value, const QCPRange &range)
 
const QCPRange operator- (const QCPRange &range, double value)
 
const QCPRange operator* (const QCPRange &range, double value)
 
const QCPRange operator* (double value, const QCPRange &range)
 
const QCPRange operator/ (const QCPRange &range, double value)
 
 Q_DECLARE_TYPEINFO (QCPLineEnding, Q_MOVABLE_TYPE)
 
 Q_DECLARE_TYPEINFO (QCPData, Q_MOVABLE_TYPE)
 
 Q_DECLARE_TYPEINFO (QCPCurveData, Q_MOVABLE_TYPE)
 
 Q_DECLARE_TYPEINFO (QCPBarData, Q_MOVABLE_TYPE)
 
 Q_DECLARE_TYPEINFO (QCPFinancialData, Q_MOVABLE_TYPE)
 

Macro Definition Documentation

◆ Q_DECL_OVERRIDE

#define Q_DECL_OVERRIDE

Definition at line 127 of file qcustomplot.h.

◆ QCP_DEVICEPIXELRATIO_FLOAT

#define QCP_DEVICEPIXELRATIO_FLOAT

Definition at line 31 of file qcustomplot.h.

◆ QCP_DEVICEPIXELRATIO_SUPPORTED

#define QCP_DEVICEPIXELRATIO_SUPPORTED

Definition at line 29 of file qcustomplot.h.

◆ QCP_LIB_DECL

#define QCP_LIB_DECL

Definition at line 122 of file qcustomplot.h.

Typedef Documentation

◆ QCPBarDataMap

Container for storing QCPBarData items in a sorted fashion. The key of the map is the key member of the QCPBarData instance.

This is the container in which QCPBars holds its data.

See also
QCPBarData, QCPBars::setData

Definition at line 3413 of file qcustomplot.h.

◆ QCPBarDataMapIterator

typedef QMapIterator<double, QCPBarData> QCPBarDataMapIterator

Definition at line 3414 of file qcustomplot.h.

◆ QCPBarDataMutableMapIterator

typedef QMutableMapIterator<double, QCPBarData> QCPBarDataMutableMapIterator

Definition at line 3415 of file qcustomplot.h.

◆ QCPCurveDataMap

Container for storing QCPCurveData items in a sorted fashion. The key of the map is the t member of the QCPCurveData instance.

This is the container in which QCPCurve holds its data.

See also
QCPCurveData, QCPCurve::setData

Definition at line 3203 of file qcustomplot.h.

◆ QCPCurveDataMapIterator

typedef QMapIterator<double, QCPCurveData> QCPCurveDataMapIterator

Definition at line 3204 of file qcustomplot.h.

◆ QCPCurveDataMutableMapIterator

typedef QMutableMapIterator<double, QCPCurveData> QCPCurveDataMutableMapIterator

Definition at line 3206 of file qcustomplot.h.

◆ QCPDataMap

Container for storing QCPData items in a sorted fashion. The key of the map is the key member of the QCPData instance.

This is the container in which QCPGraph holds its data.

See also
QCPData, QCPGraph::setData

Definition at line 2969 of file qcustomplot.h.

◆ QCPDataMapIterator

typedef QMapIterator<double, QCPData> QCPDataMapIterator

Definition at line 2970 of file qcustomplot.h.

◆ QCPDataMutableMapIterator

typedef QMutableMapIterator<double, QCPData> QCPDataMutableMapIterator

Definition at line 2971 of file qcustomplot.h.

◆ QCPFinancialDataMap

Container for storing QCPFinancialData items in a sorted fashion. The key of the map is the key member of the QCPFinancialData instance.

This is the container in which QCPFinancial holds its data.

See also
QCPFinancial, QCPFinancial::setData

Definition at line 3761 of file qcustomplot.h.

◆ QCPFinancialDataMapIterator

typedef QMapIterator<double, QCPFinancialData> QCPFinancialDataMapIterator

Definition at line 3762 of file qcustomplot.h.

◆ QCPFinancialDataMutableMapIterator

typedef QMutableMapIterator<double, QCPFinancialData> QCPFinancialDataMutableMapIterator

Definition at line 3764 of file qcustomplot.h.

Function Documentation

◆ operator*() [1/2]

const QCPRange operator* ( const QCPRange range,
double  value 
)
inline

Multiplies both boundaries of the range by value.

Definition at line 756 of file qcustomplot.h.

References result.

◆ operator*() [2/2]

const QCPRange operator* ( double  value,
const QCPRange range 
)
inline

Multiplies both boundaries of the range by value.

Definition at line 765 of file qcustomplot.h.

References result.

◆ operator+() [1/2]

const QCPRange operator+ ( const QCPRange range,
double  value 
)
inline

Adds value to both boundaries of the range.

Definition at line 729 of file qcustomplot.h.

References result.

◆ operator+() [2/2]

const QCPRange operator+ ( double  value,
const QCPRange range 
)
inline

Adds value to both boundaries of the range.

Definition at line 738 of file qcustomplot.h.

References result.

◆ operator-()

const QCPRange operator- ( const QCPRange range,
double  value 
)
inline

Subtracts value from both boundaries of the range.

Definition at line 747 of file qcustomplot.h.

References result.

◆ operator/()

const QCPRange operator/ ( const QCPRange range,
double  value 
)
inline

Divides both boundaries of the range by value.

Definition at line 774 of file qcustomplot.h.

References result.

◆ Q_DECLARE_TYPEINFO() [1/7]

Q_DECLARE_TYPEINFO ( QCPBarData  ,
Q_MOVABLE_TYPE   
)

◆ Q_DECLARE_TYPEINFO() [2/7]

Q_DECLARE_TYPEINFO ( QCPCurveData  ,
Q_MOVABLE_TYPE   
)

◆ Q_DECLARE_TYPEINFO() [3/7]

Q_DECLARE_TYPEINFO ( QCPData  ,
Q_MOVABLE_TYPE   
)

◆ Q_DECLARE_TYPEINFO() [4/7]

Q_DECLARE_TYPEINFO ( QCPFinancialData  ,
Q_MOVABLE_TYPE   
)

◆ Q_DECLARE_TYPEINFO() [5/7]

Q_DECLARE_TYPEINFO ( QCPLineEnding  ,
Q_MOVABLE_TYPE   
)

◆ Q_DECLARE_TYPEINFO() [6/7]

Q_DECLARE_TYPEINFO ( QCPRange  ,
Q_MOVABLE_TYPE   
)

◆ Q_DECLARE_TYPEINFO() [7/7]

Q_DECLARE_TYPEINFO ( QCPScatterStyle  ,
Q_MOVABLE_TYPE   
)