Manpage logo

QwtPlotCurve - A plot item, that represents a series of points.

NAME  SYNOPSIS  Public Types  Public Member Functions  Protected Member Functions  Detailed Description  Member Typedef Documentation  typedef QFlags<CurveAttribute > QwtPlotCurve::CurveAttributes  typedef QFlags<LegendAttribute > QwtPlotCurve::LegendAttributes  typedef QFlags<PaintAttribute > QwtPlotCurve::PaintAttributes  Member Enumeration Documentation  enum QwtPlotCurve::CurveAttribute  enum QwtPlotCurve::CurveStyle  enum QwtPlotCurve::LegendAttribute  enum QwtPlotCurve::PaintAttribute  Constructor & Destructor Documentation  QwtPlotCurve::QwtPlotCurve (const QString & title = QString()) [explicit]  QwtPlotCurve::QwtPlotCurve (const QwtText & title) [explicit]  QwtPlotCurve::˜QwtPlotCurve () [virtual]  Member Function Documentation  int QwtPlotCurve::adjacentPoint (Qt::Orientation orientation, qreal value)const [virtual]  double QwtPlotCurve::baseline () const  const QBrush & QwtPlotCurve::brush () const  void QwtPlotCurve::closePolyline (QPainter * painter, const QwtScaleMap &xMap, const QwtScaleMap & yMap, QPolygonF & polygon) const [protected]  int QwtPlotCurve::closestPoint (const QPointF & pos, double * dist = NULL)const [virtual]  QwtCurveFitter * QwtPlotCurve::curveFitter () const  void QwtPlotCurve::drawCurve (QPainter * painter, int style, constQwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF &canvasRect, int from, int to) const [protected], [virtual]  void QwtPlotCurve::drawDots (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, int from, int to)const [protected], [virtual]  void QwtPlotCurve::drawLines (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, int from, int to)const [protected], [virtual]  void QwtPlotCurve::drawSeries (QPainter * painter, const QwtScaleMap &xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int from,int to) const [override], [virtual]  void QwtPlotCurve::drawSteps (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, int from, int to)const [protected], [virtual]  void QwtPlotCurve::drawSticks (QPainter * painter, const QwtScaleMap &xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int from,int to) const [protected], [virtual]  void QwtPlotCurve::drawSymbols (QPainter * painter, const QwtSymbol &symbol, const QwtScaleMap & xMap, const QwtScaleMap & yMap, constQRectF & canvasRect, int from, int to) const [protected], [virtual]  void QwtPlotCurve::fillCurve (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, QPolygonF &polygon) const [protected], [virtual]  void QwtPlotCurve::init () [protected]  qreal QwtPlotCurve::interpolatedValueAt (Qt::Orientation orientation,double value) const  QwtPlotCurve::LegendAttributes QwtPlotCurve::legendAttributes () const  QwtGraphic QwtPlotCurve::legendIcon (int index, const QSizeF & size) const[override], [virtual]  double QwtPlotCurve::maxXValue () const [inline]  double QwtPlotCurve::maxYValue () const [inline]  double QwtPlotCurve::minXValue () const [inline]  double QwtPlotCurve::minYValue () const [inline]  const QPen & QwtPlotCurve::pen () const  int QwtPlotCurve::rtti () const [override], [virtual]  void QwtPlotCurve::setBaseline (double value)  void QwtPlotCurve::setBrush (const QBrush & brush)  void QwtPlotCurve::setCurveAttribute (CurveAttribute attribute, bool on =true)  void QwtPlotCurve::setCurveFitter (QwtCurveFitter * curveFitter)  void QwtPlotCurve::setLegendAttribute (LegendAttribute attribute, bool on =true)  void QwtPlotCurve::setLegendAttributes (LegendAttributes attributes)  void QwtPlotCurve::setPaintAttribute (PaintAttribute attribute, bool on =true)  void QwtPlotCurve::setPen (const QColor & color, qreal width = 0.0,Qt::PenStyle style = Qt::SolidLine)  void QwtPlotCurve::setPen (const QPen & pen)  void QwtPlotCurve::setRawSamples (const double * xData, const double *yData, int size)  void QwtPlotCurve::setRawSamples (const double * yData, int size)  void QwtPlotCurve::setRawSamples (const float * xData, const float * yData,int size)  void QwtPlotCurve::setRawSamples (const float * yData, int size)  void QwtPlotCurve::setSamples (const double * xData, const double * yData,int size)  void QwtPlotCurve::setSamples (const double * yData, int size)  void QwtPlotCurve::setSamples (const float * xData, const float * yData,int size)  void QwtPlotCurve::setSamples (const float * yData, int size)  void QwtPlotCurve::setSamples (const QVector< double > & xData, constQVector< double > & yData)  void QwtPlotCurve::setSamples (const QVector< double > & yData)  void QwtPlotCurve::setSamples (const QVector< float > & xData, constQVector< float > & yData)  void QwtPlotCurve::setSamples (const QVector< float > & yData)  void QwtPlotCurve::setSamples (const QVector< QPointF > & samples)  void QwtPlotCurve::setSamples (QwtSeriesData< QPointF > * data)  void QwtPlotCurve::setStyle (CurveStyle style)  void QwtPlotCurve::setSymbol (QwtSymbol * symbol)  QwtPlotCurve::CurveStyle QwtPlotCurve::style () const  const QwtSymbol * QwtPlotCurve::symbol () const  bool QwtPlotCurve::testCurveAttribute (CurveAttribute attribute) const  bool QwtPlotCurve::testLegendAttribute (LegendAttribute attribute) const  bool QwtPlotCurve::testPaintAttribute (PaintAttribute attribute) const  Author 

NAME

QwtPlotCurve − A plot item, that represents a series of points.

SYNOPSIS

#include <qwt_plot_curve.h>

Inherits QwtPlotSeriesItem, and QwtSeriesStore< QPointF >.

Public Types

enum CurveStyle { NoCurve = -1, Lines, Sticks, Steps, Dots, UserCurve = 100 }
enum CurveAttribute { Inverted = 0x01, Fitted = 0x02 }
enum LegendAttribute { LegendNoAttribute = 0x00, LegendShowLine = 0x01, LegendShowSymbol = 0x02, LegendShowBrush = 0x04 }
enum PaintAttribute { ClipPolygons = 0x01, FilterPoints = 0x02, MinimizeMemory = 0x04, ImageBuffer = 0x08, FilterPointsAggressive = 0x10 }
typedef QFlags< CurveAttribute > CurveAttributes
typedef QFlags< LegendAttribute > LegendAttributes
typedef QFlags< PaintAttribute > PaintAttributes

Public Types inherited from QwtPlotItem

enum RttiValues { Rtti_PlotItem = 0, Rtti_PlotGrid, Rtti_PlotScale, Rtti_PlotLegend, Rtti_PlotMarker, Rtti_PlotCurve, Rtti_PlotSpectroCurve, Rtti_PlotIntervalCurve, Rtti_PlotHistogram, Rtti_PlotSpectrogram, Rtti_PlotGraphic, Rtti_PlotTradingCurve, Rtti_PlotBarChart, Rtti_PlotMultiBarChart, Rtti_PlotShape, Rtti_PlotTextLabel, Rtti_PlotZone, Rtti_PlotVectorField, Rtti_PlotUserItem = 1000 }
Runtime type information.
enum ItemAttribute { Legend = 0x01, AutoScale = 0x02, Margins = 0x04 }
Plot Item Attributes.
enum ItemInterest { ScaleInterest = 0x01, LegendInterest = 0x02 }
Plot Item Interests.
enum RenderHint { RenderAntialiased = 0x1 }
Render hints.
typedef QFlags< ItemAttribute > ItemAttributes
typedef QFlags< ItemInterest > ItemInterests
typedef QFlags< RenderHint > RenderHints

Public Member Functions

QwtPlotCurve (const QString &title=QString())
QwtPlotCurve
(const QwtText &title)
virtual ˜QwtPlotCurve ()
Destructor.
virtual int rtti () const override
void setPaintAttribute (PaintAttribute, bool on=true)
bool testPaintAttribute (PaintAttribute) const
void setLegendAttribute (LegendAttribute, bool on=true)
bool testLegendAttribute (LegendAttribute) const
void setLegendAttributes (LegendAttributes)
LegendAttributes legendAttributes
() const
void setRawSamples (const double *xData, const double *yData, int size)
Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve.
void setRawSamples (const float *xData, const float *yData, int size)
Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve.
void setRawSamples (const double *yData, int size)
Initialize the data by pointing to a memory block which is not managed by QwtPlotCurve.
void setRawSamples (const float *yData, int size)
Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve.
void setSamples (const double *xData, const double *yData, int size)
void setSamples (const float *xData, const float *yData, int size)
void setSamples (const double *yData, int size)
void setSamples (const float *yData, int size)
void setSamples (const QVector< double > &yData)
void setSamples (const QVector< float > &yData)
void setSamples (const QVector< double > &xData, const QVector< double > &yData)
Initialize data with x- and y-arrays (explicitly shared)
void setSamples (const QVector< float > &xData, const QVector< float > &yData)
Initialize data with x- and y-arrays (explicitly shared)
void setSamples (const QVector< QPointF > &)
void setSamples (QwtSeriesData< QPointF > *)
virtual int closestPoint (const QPointF &pos, double *dist=NULL) const
virtual int adjacentPoint (Qt::Orientation orientation, qreal value) const
qreal interpolatedValueAt (Qt::Orientation, double) const
double minXValue () const
boundingRect()
.left()
double maxXValue () const
boundingRect()
.right()
double minYValue () const
boundingRect()
.top()
double maxYValue () const
boundingRect()
.bottom()
void setCurveAttribute (CurveAttribute, bool on=true)
bool testCurveAttribute (CurveAttribute) const
void setPen (const QColor &, qreal width=0.0, Qt::PenStyle=Qt::SolidLine)
void setPen (const QPen &)
const QPen & pen () const
void setBrush (const QBrush &)
Assign a brush.
const QBrush & brush () const
void setBaseline (double)
Set the value of the baseline.
double baseline () const
void setStyle (CurveStyle style)
CurveStyle style
() const
void setSymbol (QwtSymbol *)
Assign a symbol.
const QwtSymbol * symbol () const
void setCurveFitter (QwtCurveFitter *)
QwtCurveFitter
* curveFitter () const
virtual void drawSeries (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const override
virtual QwtGraphic legendIcon (int index, const QSizeF &) const override

Public Member Functions inherited from QwtPlotSeriesItem

QwtPlotSeriesItem (const QString &title=QString())
QwtPlotSeriesItem
(const QwtText &title)
virtual ˜QwtPlotSeriesItem ()
Destructor.
void setOrientation (Qt::Orientation)
Qt::Orientation orientation () const
virtual void draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const override
Draw the complete series.
virtual QRectF boundingRect () const override
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &) override
Update the item to changes of the axes scale division.

Public Member Functions inherited from QwtPlotItem

QwtPlotItem ()
QwtPlotItem
(const QString &title)
QwtPlotItem
(const QwtText &title)
virtual ˜QwtPlotItem ()
Destroy the QwtPlotItem.
void attach (QwtPlot *plot)
Attach the item to a plot.
void detach ()
This method detaches a QwtPlotItem from any QwtPlot it has been associated with.
QwtPlot
* plot () const
Return attached plot.
void setTitle (const QString &title)
void setTitle (const QwtText &title)
const QwtText & title () const
void setItemAttribute (ItemAttribute, bool on=true)
bool testItemAttribute (ItemAttribute) const
void setItemInterest (ItemInterest, bool on=true)
bool testItemInterest (ItemInterest) const
void setRenderHint (RenderHint, bool on=true)
bool testRenderHint (RenderHint) const
void setRenderThreadCount (uint numThreads)
uint renderThreadCount () const
void setLegendIconSize (const QSize &)
QSize legendIconSize () const
double z () const
void setZ (double z)
Set the z value.
void show ()
Show the item.
void hide ()
Hide the item.
virtual void setVisible (bool)
bool isVisible () const
void setAxes (QwtAxisId xAxis, QwtAxisId yAxis)
void setXAxis (QwtAxisId)
QwtAxisId xAxis () const
Return xAxis.
void setYAxis (QwtAxisId)
QwtAxisId yAxis () const
Return yAxis.
virtual void itemChanged ()
virtual void legendChanged ()
virtual void getCanvasMarginHint (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, double &left, double &top, double &right, double &bottom) const
Calculate a hint for the canvas margin.
virtual void updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &)
Update the item to changes of the legend info.
QRectF scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
Calculate the bounding scale rectangle of 2 maps.
QRectF paintRect (const QwtScaleMap &, const QwtScaleMap &) const
Calculate the bounding paint rectangle of 2 maps.
virtual QList< QwtLegendData > legendData () const
Return all information, that is needed to represent the item on the legend.

Public Member Functions inherited from QwtAbstractSeriesStore

virtual ˜QwtAbstractSeriesStore ()
Destructor.

Public Member Functions inherited from QwtSeriesStore< QPointF >

QwtSeriesStore ()
Constructor The store contains no series.
˜QwtSeriesStore
()
Destructor.
void setData (QwtSeriesData< QPointF > *series)
QwtSeriesData
< QPointF > * data ()
const QwtSeriesData< QPointF > * data () const
QPointF sample (int index) const
virtual size_t dataSize () const override
virtual QRectF dataRect () const override
virtual void setRectOfInterest (const QRectF &rect) override
QwtSeriesData
< QPointF > * swapData (QwtSeriesData< QPointF > *series)

Protected Member Functions

void init ()
Initialize internal members.
virtual void drawCurve (QPainter *, int style, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
Draw the line part (without symbols) of a curve interval.
virtual void drawSymbols (QPainter *, const QwtSymbol &, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void drawLines (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
Draw lines.
virtual void drawSticks (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void drawDots (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void drawSteps (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual void fillCurve (QPainter *, const QwtScaleMap &, const QwtScaleMap &, const QRectF &canvasRect, QPolygonF &) const
void closePolyline (QPainter *, const QwtScaleMap &, const QwtScaleMap &, QPolygonF &) const
Complete a polygon to be a closed polygon including the area between the original polygon and the baseline.

Protected Member Functions inherited from QwtPlotSeriesItem

virtual void dataChanged () override
dataChanged()
indicates, that the series has been changed.

Protected Member Functions inherited from QwtPlotItem

QwtGraphic defaultIcon (const QBrush &, const QSizeF &) const
Return a default icon from a brush.

Detailed Description

A plot item, that represents a series of points.

A curve is the representation of a series of points in the x-y plane. It supports different display styles, interpolation ( f.e. spline ) and symbols.

Usage

a) Assign curve properties

When a curve is created, it is configured to draw black solid lines with in QwtPlotCurve::Lines style and no symbols. You can change this by calling setPen(), setStyle() and setSymbol().

b) Connect/Assign data.

QwtPlotCurve gets its points using a QwtSeriesData object offering a bridge to the real storage of the points ( like QAbstractItemModel ). There are several convenience classes derived from QwtSeriesData, that also store the points inside ( like QStandardItemModel ). QwtPlotCurve also offers a couple of variations of setSamples(), that build QwtSeriesData objects from arrays internally.

c) Attach the curve to a plot

See QwtPlotItem::attach()

Example:

see examples/bode

See also

QwtPointSeriesData, QwtSymbol, QwtScaleMap

Definition at line 56 of file qwt_plot_curve.h.

Member Typedef Documentation

typedef QFlags<CurveAttribute > QwtPlotCurve::CurveAttributes

An ORed combination of CurveAttribute values.

Definition at line 133 of file qwt_plot_curve.h.

typedef QFlags<LegendAttribute > QwtPlotCurve::LegendAttributes

An ORed combination of LegendAttribute values.

Definition at line 168 of file qwt_plot_curve.h.

typedef QFlags<PaintAttribute > QwtPlotCurve::PaintAttributes

An ORed combination of PaintAttribute values.

Definition at line 234 of file qwt_plot_curve.h.

Member Enumeration Documentation

enum QwtPlotCurve::CurveAttribute

Attribute for drawing the curve

See also

setCurveAttribute(), testCurveAttribute(), curveFitter()

Enumerator
Inverted

For QwtPlotCurve::Steps only. Draws a step function from the right to the left.

Fitted

Only in combination with QwtPlotCurve::Lines A QwtCurveFitter tries to interpolate/smooth the curve, before it is painted.

Note

Curve fitting requires temporary memory for calculating coefficients and additional points. If painting in QwtPlotCurve::Fitted mode is slow it might be better to fit the points, before they are passed to QwtPlotCurve.

Definition at line 112 of file qwt_plot_curve.h.

enum QwtPlotCurve::CurveStyle

Curve styles.

See also

setStyle(), style()

Enumerator
NoCurve

Don’t draw a curve. Note: This doesn’t affect the symbols.

Lines

Connect the points with straight lines. The lines might be interpolated depending on the ’Fitted’ attribute. Curve fitting can be configured using setCurveFitter().

Sticks

Draw vertical or horizontal sticks ( depending on the orientation() ) from a baseline which is defined by setBaseline().

Steps

Connect the points with a step function. The step function is drawn from the left to the right or vice versa, depending on the QwtPlotCurve::Inverted attribute.

Dots

Draw dots at the locations of the data points. Note: This is different from a dotted line (see setPen()), and faster as a curve in QwtPlotCurve::NoStyle style and a symbol painting a point.

UserCurve

Styles >= QwtPlotCurve::UserCurve are reserved for derived classes of QwtPlotCurve that overload drawCurve() with additional application specific curve types.

Definition at line 65 of file qwt_plot_curve.h.

enum QwtPlotCurve::LegendAttribute

Attributes how to represent the curve on the legend

See also

setLegendAttribute(), testLegendAttribute(), QwtPlotItem::legendData(), legendIcon()

Enumerator
LegendNoAttribute

QwtPlotCurve tries to find a color representing the curve and paints a rectangle with it.

LegendShowLine

If the style() is not QwtPlotCurve::NoCurve a line is painted with the curve pen().

LegendShowSymbol

If the curve has a valid symbol it is painted.

LegendShowBrush

If the curve has a brush a rectangle filled with the curve brush() is painted.

Definition at line 142 of file qwt_plot_curve.h.

enum QwtPlotCurve::PaintAttribute

Attributes to modify the drawing algorithm. The default setting enables ClipPolygons | FilterPoints

See also

setPaintAttribute(), testPaintAttribute()

Enumerator
ClipPolygons

Clip polygons before painting them. In situations, where points are far outside the visible area (f.e when zooming deep) this might be a substantial improvement for the painting performance

FilterPoints

Tries to reduce the data that has to be painted, by sorting out duplicates, or paintings outside the visible area. Might have a notable impact on curves with many close points. Only a couple of very basic filtering algorithms are implemented.

MinimizeMemory

Minimize memory usage that is temporarily needed for the translated points, before they get painted. This might slow down the performance of painting

ImageBuffer

Render the points to a temporary image and paint the image. This is a very special optimization for Dots style, when having a huge amount of points. With a reasonable number of points QPainter::drawPoints() will be faster.

FilterPointsAggressive

More aggressive point filtering trying to filter out intermediate points, accepting minor visual differences.

Has only an effect, when drawing the curve to a paint device in integer coordinates ( f.e. all widgets on screen ) using the fact, that consecutive points are often mapped to the same x or y coordinate. Each chunk of samples mapped to the same coordinate can be reduced to 4 points ( first, min, max last ).

In the worst case the polygon to be rendered will be 4 times the width of the plot canvas.

The algorithm is very fast and effective for huge datasets, and can be used inside a replot cycle.

Note

Implemented for QwtPlotCurve::Lines only

As this algo replaces many small lines by a long one a nasty bug of the raster paint engine ( Qt 4.8, Qt 5.1 - 5.3 ) becomes more dominant. For these versions the bug can be worked around by enabling the QwtPainter::polylineSplitting() mode.

Definition at line 176 of file qwt_plot_curve.h.

Constructor & Destructor Documentation

QwtPlotCurve::QwtPlotCurve (const QString & title = QString()) [explicit]

Constructor

Parameters

title Title of the curve

Definition at line 123 of file qwt_plot_curve.cpp.

QwtPlotCurve::QwtPlotCurve (const QwtText & title) [explicit]

Constructor

Parameters

title Title of the curve

Definition at line 113 of file qwt_plot_curve.cpp.

QwtPlotCurve::˜QwtPlotCurve () [virtual]

Destructor.

Definition at line 130 of file qwt_plot_curve.cpp.

Member Function Documentation

int QwtPlotCurve::adjacentPoint (Qt::Orientation orientation, qreal value)const [virtual]

Find the curve point with the smallest coordinate larger than a specific value The coordinates have to be monotonic in direction of the orientation.

Parameters

orientation Qt::Horizontal corresponds to x, Qt::Vertical to y coordinates
value
x or y coordinate, depending on the orientation

Returns

Index of the curve point with the smalles coordinate above value or -1 if there is none.

Note

The implementation uses a binary search algorithm and requires the points being ordered in direction of the orientation.

See also

qwtUpperSampleIndex()

Definition at line 1108 of file qwt_plot_curve.cpp.

double QwtPlotCurve::baseline () const

Returns

Value of the baseline

See also

setBaseline()

Definition at line 1038 of file qwt_plot_curve.cpp.

const QBrush & QwtPlotCurve::brush () const

Returns

Brush used to fill the area between lines and the baseline

See also

setBrush(), setBaseline(), baseline()

Definition at line 366 of file qwt_plot_curve.cpp.

void QwtPlotCurve::closePolyline (QPainter * painter, const QwtScaleMap &xMap, const QwtScaleMap & yMap, QPolygonF & polygon) const [protected]

Complete a polygon to be a closed polygon including the area between the original polygon and the baseline.

Parameters

painter Painter
xMap
X map
yMap
Y map
polygon
Polygon to be completed

Definition at line 932 of file qwt_plot_curve.cpp.

int QwtPlotCurve::closestPoint (const QPointF & pos, double * dist = NULL)const [virtual]

Find the closest curve point for a specific position

Parameters

pos Position, where to look for the closest curve point
dist
If dist != NULL, closestPoint() returns the distance between the position and the closest curve point in paint device coordinates

Returns

Index of the closest curve point, or -1 if none can be found ( f.e when the curve has no points )

Note

closestPoint() implements a dumb algorithm, that iterates over all points

Definition at line 1054 of file qwt_plot_curve.cpp.

QwtCurveFitter * QwtPlotCurve::curveFitter () const

Get the curve fitter. If curve fitting is disabled NULL is returned.

Returns

Curve fitter

See also

setCurveFitter(), Fitted

Definition at line 875 of file qwt_plot_curve.cpp.

void QwtPlotCurve::drawCurve (QPainter * painter, int style, constQwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF &canvasRect, int from, int to) const [protected], [virtual]

Draw the line part (without symbols) of a curve interval.

Parameters

painter Painter
style
curve style, see QwtPlotCurve::CurveStyle
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
from
index of the first point to be painted
to
index of the last point to be painted

See also

draw(), drawDots(), drawLines(), drawSteps(), drawSticks()

Definition at line 432 of file qwt_plot_curve.cpp.

void QwtPlotCurve::drawDots (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, int from, int to)const [protected], [virtual]

Draw dots

Parameters

painter Painter
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
from
index of the first point to be painted
to
index of the last point to be painted

See also

draw(), drawCurve(), drawSticks(), drawLines(), drawSteps()

Definition at line 643 of file qwt_plot_curve.cpp.

void QwtPlotCurve::drawLines (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, int from, int to)const [protected], [virtual]

Draw lines. If the CurveAttribute Fitted is enabled a QwtCurveFitter tries to interpolate/smooth the curve, before it is painted.

Parameters

painter Painter
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
from
index of the first point to be painted
to
index of the last point to be painted

See also

setCurveAttribute(), setCurveFitter(), draw(), drawLines(), drawDots(), drawSteps(), drawSticks()

Definition at line 479 of file qwt_plot_curve.cpp.

void QwtPlotCurve::drawSeries (QPainter * painter, const QwtScaleMap &xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int from,int to) const [override], [virtual]

Draw an interval of the curve

Parameters

painter Painter
xMap
Maps x-values into pixel coordinates.
yMap
Maps y-values into pixel coordinates.
canvasRect
Contents rectangle of the canvas
from
Index of the first point to be painted
to
Index of the last point to be painted. If to < 0 the curve will be painted to its last point.

See also

drawCurve(), drawSymbols(),

Implements QwtPlotSeriesItem.

Definition at line 384 of file qwt_plot_curve.cpp.

void QwtPlotCurve::drawSteps (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, int from, int to)const [protected], [virtual]

Draw step function

The direction of the steps depends on Inverted attribute.

Parameters

painter Painter
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
from
index of the first point to be painted
to
index of the last point to be painted

See also

CurveAttribute, setCurveAttribute(), draw(), drawCurve(), drawDots(), drawLines(), drawSticks()

Definition at line 744 of file qwt_plot_curve.cpp.

void QwtPlotCurve::drawSticks (QPainter * painter, const QwtScaleMap &xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int from,int to) const [protected], [virtual]

Draw sticks

Parameters

painter Painter
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
from
index of the first point to be painted
to
index of the last point to be painted

See also

draw(), drawCurve(), drawDots(), drawLines(), drawSteps()

Definition at line 588 of file qwt_plot_curve.cpp.

void QwtPlotCurve::drawSymbols (QPainter * painter, const QwtSymbol &symbol, const QwtScaleMap & xMap, const QwtScaleMap & yMap, constQRectF & canvasRect, int from, int to) const [protected], [virtual]

Draw symbols

Parameters

painter Painter
symbol
Curve symbol
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
from
Index of the first point to be painted
to
Index of the last point to be painted

See also

setSymbol(), drawSeries(), drawCurve()

Definition at line 982 of file qwt_plot_curve.cpp.

void QwtPlotCurve::fillCurve (QPainter * painter, const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect, QPolygonF &polygon) const [protected], [virtual]

Fill the area between the curve and the baseline with the curve brush

Parameters

painter Painter
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
polygon
Polygon - will be modified !

See also

setBrush(), setBaseline(), setStyle()

Definition at line 892 of file qwt_plot_curve.cpp.

void QwtPlotCurve::init () [protected]

Initialize internal members.

Definition at line 136 of file qwt_plot_curve.cpp.

qreal QwtPlotCurve::interpolatedValueAt (Qt::Orientation orientation,double value) const

Calculate a fictive curve point by interpolating between the adjacent points. The curve points have to be monotonic in direction of the orientation.

Parameters

orientation For Qt::Horizontal value is a x coordinate and a y coordinate is returned. For Qt::Vertical value is a x coordinate
value
x or y coordinate, depending on the orientation

Returns

Interpolated coordinate or qQNaN() if value is outside the bounding rectangle of the curve

Note

The implementation uses a binary search algorithm and requires the points being ordered in direction of the orientation.

See also

adjacentPoint()

Definition at line 1158 of file qwt_plot_curve.cpp.

QwtPlotCurve::LegendAttributes QwtPlotCurve::legendAttributes () const

Returns

Attributes how to draw the legend icon

See also

setLegendAttributes(), testLegendAttribute()

Definition at line 228 of file qwt_plot_curve.cpp.

QwtGraphic QwtPlotCurve::legendIcon (int index, const QSizeF & size) const[override], [virtual]

Returns

Icon representing the curve on the legend

Parameters

index Index of the legend entry ( ignored as there is only one )
size
Icon size

See also

QwtPlotItem::setLegendIconSize(), QwtPlotItem::legendData()

Reimplemented from QwtPlotItem.

Definition at line 1223 of file qwt_plot_curve.cpp.

double QwtPlotCurve::maxXValue () const [inline]

boundingRect().right()

Definition at line 358 of file qwt_plot_curve.h.

double QwtPlotCurve::maxYValue () const [inline]

boundingRect().bottom()

Definition at line 370 of file qwt_plot_curve.h.

double QwtPlotCurve::minXValue () const [inline]

boundingRect().left()

Definition at line 352 of file qwt_plot_curve.h.

double QwtPlotCurve::minYValue () const [inline]

boundingRect().top()

Definition at line 364 of file qwt_plot_curve.h.

const QPen & QwtPlotCurve::pen () const

Returns

Pen used to draw the lines

See also

setPen(), brush()

Definition at line 331 of file qwt_plot_curve.cpp.

int QwtPlotCurve::rtti () const [override], [virtual]

Returns

QwtPlotItem::Rtti_PlotCurve

Reimplemented from QwtPlotItem.

Definition at line 148 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setBaseline (double value)

Set the value of the baseline. The baseline is needed for filling the curve with a brush or the Sticks drawing style.

The interpretation of the baseline depends on the orientation(). With Qt::Vertical, the baseline is interpreted as a horizontal line at y = baseline(), with Qt::Horizontal, it is interpreted as a vertical line at x = baseline().

The default value is 0.0.

Parameters

value Value of the baseline

See also

baseline(), setBrush(), setStyle(), QwtPlotAbstractSeriesItem::orientation()

Definition at line 1025 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setBrush (const QBrush & brush)

Assign a brush. In case of brush.style() != QBrush::NoBrush and style() != QwtPlotCurve::Sticks the area between the curve and the baseline will be filled.

In case !brush.color().isValid() the area will be filled by pen.color(). The fill algorithm simply connects the first and the last curve point to the baseline. So the curve data has to be sorted (ascending or descending).

Parameters

brush New brush

See also

brush(), setBaseline(), baseline()

Definition at line 351 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setCurveAttribute (CurveAttribute attribute, bool on =true)

Specify an attribute for drawing the curve

Parameters

attribute Curve attribute
on
On/Off

/sa testCurveAttribute(), setCurveFitter()

Definition at line 822 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setCurveFitter (QwtCurveFitter * curveFitter)

Assign a curve fitter

The curve fitter "smooths" the curve points, when the Fitted CurveAttribute is set. setCurveFitter(NULL) also disables curve fitting.

The curve fitter operates on the translated points ( = widget coordinates) to be functional for logarithmic scales. Obviously this is less performant for fitting algorithms, that reduce the number of points.

For situations, where curve fitting is used to improve the performance of painting huge series of points it might be better to execute the fitter on the curve points once and to cache the result in the QwtSeriesData object.

Parameters

curveFitter() Curve fitter

See also

Fitted

Definition at line 861 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setLegendAttribute (LegendAttribute attribute, bool on =true)

Specify an attribute how to draw the legend icon

Parameters

attribute Attribute
on
On/Off /sa testLegendAttribute(). legendIcon()

Definition at line 184 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setLegendAttributes (LegendAttributes attributes)

Specify the attributes how to draw the legend icon

Parameters

attributes Attributes /sa setLegendAttribute(). legendIcon()

Definition at line 213 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setPaintAttribute (PaintAttribute attribute, bool on =true)

Specify an attribute how to draw the curve

Parameters

attribute Paint attribute
on
On/Off

See also

testPaintAttribute()

Definition at line 160 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setPen (const QColor & color, qreal width = 0.0,Qt::PenStyle style = Qt::SolidLine)

Build and assign a pen

In Qt5 the default pen width is 1.0 ( 0.0 in Qt4 ) what makes it non cosmetic ( see QPen::isCosmetic() ). This method has been introduced to hide this incompatibility.

Parameters

color Pen color
width
Pen width
style
Pen style

See also

pen(), brush()

Definition at line 305 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setPen (const QPen & pen)

Assign a pen

Parameters

pen New pen

See also

pen(), brush()

Definition at line 316 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setRawSamples (const double * xData, const double *yData, int size)

Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve. setRawSamples is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying QwtCPointerData class.

Parameters

xData pointer to x data
yData
pointer to y data
size
size of x and y

See also

QwtCPointerData

Definition at line 1331 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setRawSamples (const double * yData, int size)

Initialize the data by pointing to a memory block which is not managed by QwtPlotCurve. The memory contains the y coordinates, while the index is interpreted as x coordinate.

setRawSamples() is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying QwtCPointerValueData class.

Parameters

yData pointer to y data
size
size of x and y

See also

QwtCPointerData

Definition at line 1373 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setRawSamples (const float * xData, const float * yData,int size)

Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve. setRawSamples is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying QwtCPointerData class.

Parameters

xData pointer to x data
yData
pointer to y data
size
size of x and y

See also

QwtCPointerData

Definition at line 1351 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setRawSamples (const float * yData, int size)

Initialize the data by pointing to memory blocks which are not managed by QwtPlotCurve. The memory contains the y coordinates, while the index is interpreted as x coordinate.

setRawSamples() is provided for efficiency. It is important to keep the pointers during the lifetime of the underlying QwtCPointerValueData class.

Parameters

yData pointer to y data
size
size of x and y

See also

QwtCPointerData

Definition at line 1394 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const double * xData, const double * yData,int size)

Set data by copying x- and y-values from specified memory blocks. Contrary to setRawSamples(), this function makes a ’deep copy’ of the data.

Parameters

xData pointer to x values
yData
pointer to y values
size
size of xData and yData

See also

QwtPointArrayData

Definition at line 1410 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const double * yData, int size)

Set data by copying y-values from a specified memory block.

The memory contains the y coordinates, while the index is interpreted as x coordinate.

Parameters

yData y data
size
size of yData

See also

QwtValuePointData

Definition at line 1472 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const float * xData, const float * yData,int size)

Set data by copying x- and y-values from specified memory blocks. Contrary to setRawSamples(), this function makes a ’deep copy’ of the data.

Parameters

xData pointer to x values
yData
pointer to y values
size
size of xData and yData

See also

QwtPointArrayData

Definition at line 1427 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const float * yData, int size)

Set data by copying y-values from a specified memory block.

The vector contains the y coordinates, while the index is interpreted as x coordinate.

Parameters

yData y data
size
size of yData

See also

QwtValuePointData

Definition at line 1488 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const QVector< double > & xData, constQVector< double > & yData)

Initialize data with x- and y-arrays (explicitly shared)

Parameters

xData x data
yData
y data

See also

QwtPointArrayData

Definition at line 1441 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const QVector< double > & yData)

Initialize data with an array of y values (explicitly shared)

The vector contains the y coordinates, while the index is the x coordinate.

Parameters

yData y data

See also

QwtValuePointData

Definition at line 1503 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const QVector< float > & xData, constQVector< float > & yData)

Initialize data with x- and y-arrays (explicitly shared)

Parameters

xData x data
yData
y data

See also

QwtPointArrayData

Definition at line 1455 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const QVector< float > & yData)

Initialize data with an array of y values (explicitly shared)

The vector contains the y coordinates, while the index is the x coordinate.

Parameters

yData y data

See also

QwtValuePointData

Definition at line 1518 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (const QVector< QPointF > & samples)

Initialize data with an array of points.

Parameters

samples Vector of points

Note

QVector is implicitly shared

QPolygonF is derived from QVector<QPointF>

Definition at line 1312 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSamples (QwtSeriesData< QPointF > * data)

Assign a series of points

setSamples() is just a wrapper for setData() without any additional value - beside that it is easier to find for the developer.

Parameters

data Data

Warning

The item takes ownership of the data object, deleting it when its not used anymore.

Definition at line 1300 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setStyle (CurveStyle style)

Set the curve’s drawing style

Parameters

style Curve style

See also

style()

Definition at line 239 of file qwt_plot_curve.cpp.

void QwtPlotCurve::setSymbol (QwtSymbol * symbol)

Assign a symbol. The curve will take the ownership of the symbol, hence the previously set symbol will be delete by setting a new one. If symbol is NULL no symbol will be drawn.

Parameters

symbol Symbol

See also

symbol()

Definition at line 269 of file qwt_plot_curve.cpp.

QwtPlotCurve::CurveStyle QwtPlotCurve::style () const

Returns

Style of the curve

See also

setStyle()

Definition at line 254 of file qwt_plot_curve.cpp.

const QwtSymbol * QwtPlotCurve::symbol () const

Returns

Current symbol or NULL, when no symbol has been assigned

See also

setSymbol()

Definition at line 287 of file qwt_plot_curve.cpp.

bool QwtPlotCurve::testCurveAttribute (CurveAttribute attribute) const

Returns

true, if attribute is enabled

See also

setCurveAttribute()

Definition at line 839 of file qwt_plot_curve.cpp.

bool QwtPlotCurve::testLegendAttribute (LegendAttribute attribute) const

Returns

True, when attribute is enabled

See also

setLegendAttribute()

Definition at line 202 of file qwt_plot_curve.cpp.

bool QwtPlotCurve::testPaintAttribute (PaintAttribute attribute) const

Returns

True, when attribute is enabled

See also

setPaintAttribute()

Definition at line 172 of file qwt_plot_curve.cpp.

Author

Generated automatically by Doxygen for Qwt User’s Guide from the source code.


Updated 2026-06-01 - jenkler.se | uex.se