QCPErrorBars
Public Types | |
enum | ErrorType { etKeyError , etValueError } |
Public Types inherited from QObject | |
typedef | QObjectList |
Public Member Functions | |
QCPErrorBars (QCPAxis *keyAxis, QCPAxis *valueAxis) | |
void | addData (const QVector< double > &error) |
void | addData (const QVector< double > &errorMinus, const QVector< double > &errorPlus) |
void | addData (double error) |
void | addData (double errorMinus, double errorPlus) |
QSharedPointer< QCPErrorBarsDataContainer > | data () const |
virtual int | dataCount () const override |
virtual double | dataMainKey (int index) const override |
virtual double | dataMainValue (int index) const override |
virtual QPointF | dataPixelPosition (int index) const override |
QCPAbstractPlottable * | dataPlottable () const |
virtual double | dataSortKey (int index) const override |
virtual QCPRange | dataValueRange (int index) const override |
ErrorType | errorType () const |
virtual int | findBegin (double sortKey, bool expandedRange=true) const override |
virtual int | findEnd (double sortKey, bool expandedRange=true) const override |
virtual QCPPlottableInterface1D * | interface1D () override |
virtual double | selectTest (const QPointF &pos, bool onlySelectable, QVariant *details=nullptr) const override |
virtual QCPDataSelection | selectTestRect (const QRectF &rect, bool onlySelectable) const override |
void | setData (const QVector< double > &error) |
void | setData (const QVector< double > &errorMinus, const QVector< double > &errorPlus) |
void | setData (QSharedPointer< QCPErrorBarsDataContainer > data) |
void | setDataPlottable (QCPAbstractPlottable *plottable) |
void | setErrorType (ErrorType type) |
void | setSymbolGap (double pixels) |
void | setWhiskerWidth (double pixels) |
virtual bool | sortKeyIsMainKey () const override |
double | symbolGap () const |
double | whiskerWidth () const |
Public Member Functions inherited from QCPAbstractPlottable | |
QCPAbstractPlottable (QCPAxis *keyAxis, QCPAxis *valueAxis) | |
bool | addToLegend () |
bool | addToLegend (QCPLegend *legend) |
bool | antialiasedFill () const |
bool | antialiasedScatters () const |
QBrush | brush () const |
const QPointF | coordsToPixels (double key, double value) const |
void | coordsToPixels (double key, double value, double &x, double &y) const |
QCPAxis * | keyAxis () const |
QString | name () const |
QPen | pen () const |
void | pixelsToCoords (const QPointF &pixelPos, double &key, double &value) const |
void | pixelsToCoords (double x, double y, double &key, double &value) const |
bool | removeFromLegend () const |
bool | removeFromLegend (QCPLegend *legend) const |
void | rescaleAxes (bool onlyEnlarge=false) const |
void | rescaleKeyAxis (bool onlyEnlarge=false) const |
void | rescaleValueAxis (bool onlyEnlarge=false, bool inKeyRange=false) const |
QCP::SelectionType | selectable () const |
bool | selected () const |
QCPDataSelection | selection () const |
QCPSelectionDecorator * | selectionDecorator () const |
void | setAntialiasedFill (bool enabled) |
void | setAntialiasedScatters (bool enabled) |
void | setBrush (const QBrush &brush) |
void | setKeyAxis (QCPAxis *axis) |
void | setName (const QString &name) |
void | setPen (const QPen &pen) |
Q_SLOT void | setSelectable (QCP::SelectionType selectable) |
Q_SLOT void | setSelection (QCPDataSelection selection) |
void | setSelectionDecorator (QCPSelectionDecorator *decorator) |
void | setValueAxis (QCPAxis *axis) |
QCPAxis * | valueAxis () const |
Public Member Functions inherited from QCPLayerable | |
QCPLayerable (QCustomPlot *plot, QString targetLayer=QString(), QCPLayerable *parentLayerable=nullptr) | |
bool | antialiased () const |
QCPLayer * | layer () const |
QCPLayerable * | parentLayerable () const |
QCustomPlot * | parentPlot () const |
bool | realVisibility () const |
void | setAntialiased (bool enabled) |
bool | setLayer (const QString &layerName) |
Q_SLOT bool | setLayer (QCPLayer *layer) |
void | setVisible (bool on) |
bool | visible () const |
Public Member Functions inherited from QObject | |
QObject (QObject *parent) | |
QBindable< QString > | bindableObjectName () |
bool | blockSignals (bool block) |
const QObjectList & | children () const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectInfo () const const |
void | dumpObjectTree () const const |
QList< QByteArray > | dynamicPropertyNames () const const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (Qt::FindChildOptions options) const const |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
bool | isQuickItemType () const const |
bool | isWidgetType () const const |
bool | isWindowType () const const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
QVariant | property (const char *name) const const |
Q_CLASSINFO (Name, Value) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_GADGET_EXPORT (EXPORT_MACRO) | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_MOC_INCLUDE Q_MOC_INCLUDE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qobject_cast (const QObject *object) |
T | qobject_cast (QObject *object) |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
void | removeEventFilter (QObject *obj) |
void | setObjectName (const QString &name) |
void | setObjectName (QAnyStringView name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | setProperty (const char *name, QVariant &&value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType) |
QThread * | thread () const const |
Public Member Functions inherited from QCPPlottableInterface1D |
Protected Member Functions | |
virtual void | draw (QCPPainter *painter) override |
virtual void | drawLegendIcon (QCPPainter *painter, const QRectF &rect) const override |
bool | errorBarVisible (int index) const |
void | getDataSegments (QList< QCPDataRange > &selectedSegments, QList< QCPDataRange > &unselectedSegments) const |
void | getErrorBarLines (QCPErrorBarsDataContainer::const_iterator it, QVector< QLineF > &backbones, QVector< QLineF > &whiskers) const |
virtual QCPRange | getKeyRange (bool &foundRange, QCP::SignDomain inSignDomain=QCP::sdBoth) const override |
virtual QCPRange | getValueRange (bool &foundRange, QCP::SignDomain inSignDomain=QCP::sdBoth, const QCPRange &inKeyRange=QCPRange()) const override |
void | getVisibleDataBounds (QCPErrorBarsDataContainer::const_iterator &begin, QCPErrorBarsDataContainer::const_iterator &end, const QCPDataRange &rangeRestriction) const |
double | pointDistance (const QPointF &pixelPoint, QCPErrorBarsDataContainer::const_iterator &closestData) const |
bool | rectIntersectsLine (const QRectF &pixelRect, const QLineF &line) const |
Protected Member Functions inherited from QCPAbstractPlottable | |
void | applyDefaultAntialiasingHint (QCPPainter *painter) const override |
void | applyFillAntialiasingHint (QCPPainter *painter) const |
void | applyScattersAntialiasingHint (QCPPainter *painter) const |
virtual QRect | clipRect () const override |
virtual void | deselectEvent (bool *selectionStateChanged) override |
virtual void | selectEvent (QMouseEvent *event, bool additive, const QVariant &details, bool *selectionStateChanged) override |
virtual QCP::Interaction | selectionCategory () const override |
Protected Member Functions inherited from QCPLayerable | |
void | applyAntialiasingHint (QCPPainter *painter, bool localAntialiased, QCP::AntialiasedElement overrideElement) const |
void | initializeParentPlot (QCustomPlot *parentPlot) |
virtual void | mouseDoubleClickEvent (QMouseEvent *event, const QVariant &details) |
virtual void | mouseMoveEvent (QMouseEvent *event, const QPointF &startPos) |
virtual void | mousePressEvent (QMouseEvent *event, const QVariant &details) |
virtual void | mouseReleaseEvent (QMouseEvent *event, const QPointF &startPos) |
bool | moveToLayer (QCPLayer *layer, bool prepend) |
virtual void | parentPlotInitialized (QCustomPlot *parentPlot) |
void | setParentLayerable (QCPLayerable *parentLayerable) |
virtual void | wheelEvent (QWheelEvent *event) |
Protected Member Functions inherited from QObject | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Protected Attributes | |
QSharedPointer< QCPErrorBarsDataContainer > | mDataContainer |
QPointer< QCPAbstractPlottable > | mDataPlottable |
ErrorType | mErrorType |
double | mSymbolGap |
double | mWhiskerWidth |
Protected Attributes inherited from QCPAbstractPlottable | |
bool | mAntialiasedFill |
bool | mAntialiasedScatters |
QBrush | mBrush |
QPointer< QCPAxis > | mKeyAxis |
QString | mName |
QPen | mPen |
QCP::SelectionType | mSelectable |
QCPDataSelection | mSelection |
QCPSelectionDecorator * | mSelectionDecorator |
QPointer< QCPAxis > | mValueAxis |
Protected Attributes inherited from QCPLayerable | |
bool | mAntialiased |
QCPLayer * | mLayer |
QPointer< QCPLayerable > | mParentLayerable |
QCustomPlot * | mParentPlot |
bool | mVisible |
Additional Inherited Members | |
Properties inherited from QObject | |
objectName | |
Signals inherited from QCPAbstractPlottable | |
void | selectableChanged (QCP::SelectionType selectable) |
void | selectionChanged (bool selected) |
void | selectionChanged (const QCPDataSelection &selection) |
Signals inherited from QCPLayerable | |
void | layerChanged (QCPLayer *newLayer) |
Static Public Member Functions inherited from QObject | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
Detailed Description
A plottable that adds a set of error bars to other plottables.
The QCPErrorBars plottable can be attached to other one-dimensional plottables (e.g. QCPGraph, QCPCurve, QCPBars, etc.) and equips them with error bars.
Use setDataPlottable to define for which plottable the QCPErrorBars shall display the error bars. The orientation of the error bars can be controlled with setErrorType.
By using setData, you can supply the actual error data, either as symmetric error or plus/minus asymmetric errors. QCPErrorBars only stores the error data. The absolute key/value position of each error bar will be adopted from the configured data plottable. The error data of the QCPErrorBars are associated one-to-one via their index to the data points of the data plottable. You can directly access and manipulate the error bar data via data.
Set either of the plus/minus errors to NaN (qQNaN()
or std::numeric_limits<double>::quiet_NaN()
) to not show the respective error bar on the data point at that index.
Changing the appearance
The appearance of the error bars is defined by the pen (setPen), and the width of the whiskers (setWhiskerWidth). Further, the error bar backbones may leave a gap around the data point center to prevent that error bars are drawn too close to or even through scatter points. This gap size can be controlled via setSymbolGap.
Definition at line 6326 of file qcustomplot.h.
Member Enumeration Documentation
◆ ErrorType
Defines in which orientation the error bars shall appear. If your data needs both error dimensions, create two QCPErrorBars with different ErrorType.
- See also
- setErrorType
Enumerator | |
---|---|
etKeyError | The errors are for the key dimension (bars appear parallel to the key axis) |
etValueError | The errors are for the value dimension (bars appear parallel to the value axis) |
Definition at line 6344 of file qcustomplot.h.
Constructor & Destructor Documentation
◆ QCPErrorBars()
Constructs an error bars plottable which uses keyAxis as its key axis ("x") and valueAxis as its value axis ("y"). keyAxis and valueAxis must reside in the same QCustomPlot instance and not have the same orientation. If either of these restrictions is violated, a corresponding message is printed to the debug output (qDebug), the construction is not aborted, though.
It is also important that the keyAxis and valueAxis are the same for the error bars plottable and the data plottable that the error bars shall be drawn on (setDataPlottable).
The created QCPErrorBars is automatically registered with the QCustomPlot instance inferred from keyAxis. This QCustomPlot instance takes ownership of the QCPErrorBars, so do not delete it manually but use QCustomPlot::removePlottable() instead.
Definition at line 27994 of file qcustomplot.cpp.
◆ ~QCPErrorBars()
|
overridevirtual |
Definition at line 28005 of file qcustomplot.cpp.
Member Function Documentation
◆ addData() [1/4]
void QCPErrorBars::addData | ( | const QVector< double > & | error | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Adds symmetrical error values as specified in error. The errors will be associated one-to-one by the data point index to the associated data plottable (setDataPlottable).
You can directly access and manipulate the error bar data via data.
- See also
- setData
Definition at line 28132 of file qcustomplot.cpp.
◆ addData() [2/4]
void QCPErrorBars::addData | ( | const QVector< double > & | errorMinus, |
const QVector< double > & | errorPlus ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Adds asymmetrical errors as specified in errorMinus and errorPlus. The errors will be associated one-to-one by the data point index to the associated data plottable (setDataPlottable).
You can directly access and manipulate the error bar data via data.
- See also
- setData
Definition at line 28147 of file qcustomplot.cpp.
◆ addData() [3/4]
void QCPErrorBars::addData | ( | double | error | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Adds a single symmetrical error bar as specified in error. The errors will be associated one-to-one by the data point index to the associated data plottable (setDataPlottable).
You can directly access and manipulate the error bar data via data.
- See also
- setData
Definition at line 28166 of file qcustomplot.cpp.
◆ addData() [4/4]
void QCPErrorBars::addData | ( | double | errorMinus, |
double | errorPlus ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Adds a single asymmetrical error bar as specified in errorMinus and errorPlus. The errors will be associated one-to-one by the data point index to the associated data plottable (setDataPlottable).
You can directly access and manipulate the error bar data via data.
- See also
- setData
Definition at line 28181 of file qcustomplot.cpp.
◆ data()
|
inline |
Returns a shared pointer to the internal data storage of type QCPErrorBarsDataContainer. You may use it to directly manipulate the error values, which may be more convenient and faster than using the regular setData methods.
Definition at line 6352 of file qcustomplot.h.
◆ dataCount()
|
overridevirtual |
Returns the number of data points of the plottable.
Implements QCPPlottableInterface1D.
Definition at line 28187 of file qcustomplot.cpp.
◆ dataMainKey()
|
overridevirtual |
Returns the main key of the data point at the given index.
What the main key is, is defined by the plottable's data type. See the QCPDataContainer DataType documentation for details about this naming convention.
Implements QCPPlottableInterface1D.
Definition at line 28193 of file qcustomplot.cpp.
◆ dataMainValue()
|
overridevirtual |
Returns the main value of the data point at the given index.
What the main value is, is defined by the plottable's data type. See the QCPDataContainer DataType documentation for details about this naming convention.
Implements QCPPlottableInterface1D.
Definition at line 28213 of file qcustomplot.cpp.
◆ dataPixelPosition()
|
overridevirtual |
Returns the pixel position on the widget surface at which the data point at the given index appears.
Usually this corresponds to the point of dataMainKey/ dataMainValue, in pixel coordinates. However, depending on the plottable, this might be a different apparent position than just a coord-to-pixel transform of those values. For example, QCPBars apparent data values can be shifted depending on their stacking, bar grouping or configured base value.
Implements QCPPlottableInterface1D.
Definition at line 28240 of file qcustomplot.cpp.
◆ dataPlottable()
|
inline |
Definition at line 6353 of file qcustomplot.h.
◆ dataSortKey()
|
overridevirtual |
Returns the sort key of the data point at the given index.
What the sort key is, is defined by the plottable's data type. See the QCPDataContainer DataType documentation for details about this naming convention.
Implements QCPPlottableInterface1D.
Definition at line 28203 of file qcustomplot.cpp.
◆ dataValueRange()
|
overridevirtual |
Returns the value range of the data point at the given index.
What the value range is, is defined by the plottable's data type. See the QCPDataContainer DataType documentation for details about this naming convention.
Implements QCPPlottableInterface1D.
Definition at line 28223 of file qcustomplot.cpp.
◆ draw()
|
overrideprotectedvirtual |
This function draws the layerable with the specified painter. It is only called by QCustomPlot, if the layerable is visible (setVisible).
Before this function is called, the painter's antialiasing state is set via applyDefaultAntialiasingHint, see the documentation there. Further, the clipping rectangle was set to clipRect.
Implements QCPAbstractPlottable.
Definition at line 28361 of file qcustomplot.cpp.
◆ drawLegendIcon()
|
overrideprotectedvirtual |
called by QCPLegend::draw (via QCPPlottableLegendItem::draw) to create a graphical representation of this plottable inside rect, next to the plottable name.
The passed painter has its cliprect set to rect, so painting outside of rect won't appear outside the legend icon border.
Implements QCPAbstractPlottable.
Definition at line 28423 of file qcustomplot.cpp.
◆ errorBarVisible()
|
protected |
Returns whether the error bar at the specified index is visible within the current key axis range.
This method assumes for performance reasons without checking that the key axis, the value axis, and the data plottable (setDataPlottable) are not nullptr
and that index is within valid bounds of this QCPErrorBars instance and the bounds of the data plottable.
Definition at line 28808 of file qcustomplot.cpp.
◆ errorType()
|
inline |
Definition at line 6354 of file qcustomplot.h.
◆ findBegin()
|
overridevirtual |
Returns the index of the data point with a (sort-)key that is equal to, just below, or just above sortKey. If expandedRange is true, the data point just below sortKey will be considered, otherwise the one just above.
This can be used in conjunction with findEnd to iterate over data points within a given key range, including or excluding the bounding data points that are just beyond the specified range.
If expandedRange is true but there are no data points below sortKey, 0 is returned.
If the container is empty, returns 0 (in that case, findEnd will also return 0, so a loop using these methods will not iterate over the index 0).
- See also
- findEnd, QCPDataContainer::findBegin
Implements QCPPlottableInterface1D.
Definition at line 28298 of file qcustomplot.cpp.
◆ findEnd()
|
overridevirtual |
Returns the index one after the data point with a (sort-)key that is equal to, just above, or just below sortKey. If expandedRange is true, the data point just above sortKey will be considered, otherwise the one just below.
This can be used in conjunction with findBegin to iterate over data points within a given key range, including the bounding data points that are just below and above the specified range.
If expandedRange is true but there are no data points above sortKey, the index just above the highest data point is returned.
If the container is empty, returns 0.
- See also
- findBegin, QCPDataContainer::findEnd
Implements QCPPlottableInterface1D.
Definition at line 28314 of file qcustomplot.cpp.
◆ getDataSegments()
|
protected |
- Note
- This method is identical to QCPAbstractPlottable1D::getDataSegments but needs to be reproduced here since the QCPErrorBars plottable, as a special case that doesn't have its own key/value data coordinates, doesn't derive from QCPAbstractPlottable1D. See the documentation there for details.
Definition at line 28780 of file qcustomplot.cpp.
◆ getErrorBarLines()
|
protected |
Calculates the lines that make up the error bar belonging to the data point it.
The resulting lines are added to backbones and whiskers. The vectors are not cleared, so calling this method with different it but the same backbones and whiskers allows to accumulate lines for multiple data points.
This method assumes that it is a valid iterator within the bounds of this QCPErrorBars instance and within the bounds of the associated data plottable.
Definition at line 28612 of file qcustomplot.cpp.
◆ getKeyRange()
|
overrideprotectedvirtual |
Returns the coordinate range that all data in this plottable span in the key axis dimension. For logarithmic plots, one can set inSignDomain to either QCP::sdNegative or QCP::sdPositive in order to restrict the returned range to that sign domain. E.g. when only negative range is wanted, set inSignDomain to QCP::sdNegative and all positive points will be ignored for range calculation. For no restriction, just set inSignDomain to QCP::sdBoth (default). foundRange is an output parameter that indicates whether a range could be found or not. If this is false, you shouldn't use the returned range (e.g. no points in data).
Note that foundRange is not the same as QCPRange::validRange, since the range returned by this function may have size zero (e.g. when there is only one data point). In this case foundRange would return true, but the returned range is not a valid range in terms of QCPRange::validRange.
- See also
- rescaleAxes, getValueRange
Implements QCPAbstractPlottable.
Definition at line 28441 of file qcustomplot.cpp.
◆ getValueRange()
|
overrideprotectedvirtual |
Returns the coordinate range that the data points in the specified key range (inKeyRange) span in the value axis dimension. For logarithmic plots, one can set inSignDomain to either QCP::sdNegative or QCP::sdPositive in order to restrict the returned range to that sign domain. E.g. when only negative range is wanted, set inSignDomain to QCP::sdNegative and all positive points will be ignored for range calculation. For no restriction, just set inSignDomain to QCP::sdBoth (default). foundRange is an output parameter that indicates whether a range could be found or not. If this is false, you shouldn't use the returned range (e.g. no points in data).
If inKeyRange has both lower and upper bound set to zero (is equal to QCPRange()
), all data points are considered, without any restriction on the keys.
Note that foundRange is not the same as QCPRange::validRange, since the range returned by this function may have size zero (e.g. when there is only one data point). In this case foundRange would return true, but the returned range is not a valid range in terms of QCPRange::validRange.
- See also
- rescaleAxes, getKeyRange
Implements QCPAbstractPlottable.
Definition at line 28515 of file qcustomplot.cpp.
◆ getVisibleDataBounds()
|
protected |
This method outputs the currently visible data range via begin and end. The returned range will also never exceed rangeRestriction.
Since error bars with type etKeyError may extend to arbitrarily positive and negative key coordinates relative to their data point key, this method checks all outer error bars whether they truly don't reach into the visible portion of the axis rect, by calling errorBarVisible. On the other hand error bars with type etValueError that are associated with data plottables whose sort key is equal to the main key (see QCPDataContainer DataType) can be handled very efficiently by finding the visible range of error bars through binary search (QCPPlottableInterface1D::findBegin and QCPPlottableInterface1D::findEnd).
If the plottable's sort key is not equal to the main key, this method returns the full data range, only restricted by rangeRestriction. Drawing optimization then has to be done on a point-by-point basis in the draw method.
Definition at line 28681 of file qcustomplot.cpp.
◆ interface1D()
|
inlineoverridevirtual |
If this plottable is a one-dimensional plottable, i.e. it implements the QCPPlottableInterface1D, returns the this pointer with that type. Otherwise (e.g. in the case of a QCPColorMap) returns zero.
You can use this method to gain read access to data coordinates while holding a pointer to the abstract base class only.
Reimplemented from QCPAbstractPlottable.
Definition at line 6387 of file qcustomplot.h.
◆ pointDistance()
|
protected |
Calculates the minimum distance in pixels the error bars' representation has from the given pixelPoint. This is used to determine whether the error bar was clicked or not, e.g. in selectTest. The closest data point to pixelPoint is returned in closestData.
Definition at line 28740 of file qcustomplot.cpp.
◆ rectIntersectsLine()
|
protected |
Returns whether line intersects (or is contained in) pixelRect.
line is assumed to be either perfectly horizontal or perfectly vertical, as is the case for error bar lines.
Definition at line 28838 of file qcustomplot.cpp.
◆ selectTest()
|
overridevirtual |
Implements a selectTest specific to this plottable's point geometry.
If details is not 0, it will be set to a QCPDataSelection, describing the closest data point to pos.
\seebaseclassmethod QCPAbstractPlottable::selectTest
Implements QCPAbstractPlottable.
Definition at line 28337 of file qcustomplot.cpp.
◆ selectTestRect()
|
overridevirtual |
Returns a data selection containing all the data points of this plottable which are contained (or hit by) rect. This is used mainly in the selection rect interaction for data selection (data selection mechanism).
If onlySelectable is true, an empty QCPDataSelection is returned if this plottable is not selectable (i.e. if QCPAbstractPlottable::setSelectable is QCP::stNone).
- Note
- rect must be a normalized rect (positive or zero width and height). This is especially important when using the rect of QCPSelectionRect::accepted, which is not necessarily normalized. Use
QRect::normalized()
when passing a rect which might not be normalized.
Implements QCPPlottableInterface1D.
Definition at line 28265 of file qcustomplot.cpp.
◆ setData() [1/3]
void QCPErrorBars::setData | ( | const QVector< double > & | error | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Sets symmetrical error values as specified in error. The errors will be associated one-to-one by the data point index to the associated data plottable (setDataPlottable).
You can directly access and manipulate the error bar data via data.
- See also
- addData
Definition at line 28041 of file qcustomplot.cpp.
◆ setData() [2/3]
void QCPErrorBars::setData | ( | const QVector< double > & | errorMinus, |
const QVector< double > & | errorPlus ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Sets asymmetrical errors as specified in errorMinus and errorPlus. The errors will be associated one-to-one by the data point index to the associated data plottable (setDataPlottable).
You can directly access and manipulate the error bar data via data.
- See also
- addData
Definition at line 28057 of file qcustomplot.cpp.
◆ setData() [3/3]
void QCPErrorBars::setData | ( | QSharedPointer< QCPErrorBarsDataContainer > | data | ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Replaces the current data container with the provided data container.
Since a QSharedPointer is used, multiple QCPErrorBars instances may share the same data container safely. Modifying the data in the container will then affect all QCPErrorBars instances that share the container. Sharing can be achieved by simply exchanging the data containers wrapped in shared pointers:
If you do not wish to share containers, but create a copy from an existing container, assign the data containers directly:
(This uses different notation compared with other plottables, because the QCPErrorBars uses a QVector<QCPErrorBarsData>
as its data container, instead of a QCPDataContainer.)
- See also
- addData
Definition at line 28027 of file qcustomplot.cpp.
◆ setDataPlottable()
void QCPErrorBars::setDataPlottable | ( | QCPAbstractPlottable * | plottable | ) |
Sets the data plottable to which the error bars will be applied. The error values specified e.g. via setData will be associated one-to-one by the data point index to the data points of plottable. This means that the error bars will adopt the key/value coordinates of the data point with the same index.
The passed plottable must be a one-dimensional plottable, i.e. it must implement the QCPPlottableInterface1D. Further, it must not be a QCPErrorBars instance itself. If either of these restrictions is violated, a corresponding qDebug output is generated, and the data plottable of this QCPErrorBars instance is set to zero.
For proper display, care must also be taken that the key and value axes of the plottable match those configured for this QCPErrorBars instance.
Definition at line 28077 of file qcustomplot.cpp.
◆ setErrorType()
void QCPErrorBars::setErrorType | ( | ErrorType | type | ) |
Sets in which orientation the error bars shall appear on the data points. If your data needs both error dimensions, create two QCPErrorBars with different type.
Definition at line 28099 of file qcustomplot.cpp.
◆ setSymbolGap()
void QCPErrorBars::setSymbolGap | ( | double | pixels | ) |
Sets the gap diameter around the data points that will be left out when drawing the error bar backbones. This gap prevents that error bars are drawn too close to or even through scatter points.
Definition at line 28118 of file qcustomplot.cpp.
◆ setWhiskerWidth()
void QCPErrorBars::setWhiskerWidth | ( | double | pixels | ) |
Sets the width of the whiskers (the short bars at the end of the actual error bar backbones) to pixels.
Definition at line 28108 of file qcustomplot.cpp.
◆ sortKeyIsMainKey()
|
overridevirtual |
Returns whether the sort key (dataSortKey) is identical to the main key (dataMainKey).
What the sort and main keys are, is defined by the plottable's data type. See the QCPDataContainer DataType documentation for details about this naming convention.
Implements QCPPlottableInterface1D.
Definition at line 28250 of file qcustomplot.cpp.
◆ symbolGap()
|
inline |
Definition at line 6356 of file qcustomplot.h.
◆ whiskerWidth()
|
inline |
Definition at line 6355 of file qcustomplot.h.
Member Data Documentation
◆ mDataContainer
|
protected |
Definition at line 6391 of file qcustomplot.h.
◆ mDataPlottable
|
protected |
Definition at line 6392 of file qcustomplot.h.
◆ mErrorType
|
protected |
Definition at line 6393 of file qcustomplot.h.
◆ mSymbolGap
|
protected |
Definition at line 6395 of file qcustomplot.h.
◆ mWhiskerWidth
|
protected |
Definition at line 6394 of file qcustomplot.h.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 4 2024 16:38:45 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.