QwtPlotHistogram Class Reference
QwtPlotHistogram represents a series of samples, where an interval is associated with a value (
).
More...
#include <qwt_plot_histogram.h>
List of all members.
Public Types |
enum | HistogramStyle {
Outline,
Columns,
Lines,
UserStyle = 100
} |
Public Member Functions |
| QwtPlotHistogram (const QString &title=QString::null) |
| QwtPlotHistogram (const QwtText &title) |
virtual | ~QwtPlotHistogram () |
virtual int | rtti () const |
void | setPen (const QPen &) |
const QPen & | pen () const |
void | setBrush (const QBrush &) |
const QBrush & | brush () const |
void | setSamples (const QVector< QwtIntervalSample > &) |
void | setBaseline (double reference) |
double | baseline () const |
void | setStyle (HistogramStyle style) |
HistogramStyle | style () const |
void | setSymbol (const QwtColumnSymbol *) |
const QwtColumnSymbol * | symbol () const |
virtual void | drawSeries (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const |
virtual QRectF | boundingRect () const |
virtual void | drawLegendIdentifier (QPainter *, const QRectF &) const |
Protected Member Functions |
virtual QwtColumnRect | columnRect (const QwtIntervalSample &, const QwtScaleMap &, const QwtScaleMap &) const |
virtual void | drawColumn (QPainter *, const QwtColumnRect &, const QwtIntervalSample &) const |
void | drawColumns (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | drawOutline (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
void | drawLines (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, int from, int to) const |
Detailed Description
QwtPlotHistogram represents a series of samples, where an interval is associated with a value (
).
The representation depends on the style() and an optional symbol() that is displayed for each interval.
- Note:
- The term "histogram" is used in a different way in the areas of digital image processing and statistics. Wikipedia introduces the terms "image histogram" and "color histogram" to avoid confusions. While "image histograms" can be displayed by a QwtPlotCurve there is no applicable plot item for a "color histogram" yet.
Member Enumeration Documentation
Histogram styles.
- Outline
Draw an outline around the area, that is build by all intervals using the pen() and fill it with the brush(). The outline style requires, that the intervals are in increasing order and not overlapping.
- Columns
Draw a column for each interval. When a symbol() has been set the symbol is used otherwise the column is displayed as plain rectangle using pen() and brush().
- Lines
Draw a simple line using the pen() for each interval.
- UserStyle
Styles >= UserStyle are reserved for derived classes that overload drawSeries() with additional application specific ways to display a histogram.
The default style is Columns.
- See also:
- setStyle(), style(), setSymbol(), symbol(), setBaseline()
Constructor & Destructor Documentation
QwtPlotHistogram::QwtPlotHistogram |
( |
const QString & |
title = QString::null |
) |
[explicit] |
Constructor
- Parameters:
-
| title | Title of the histogram. |
QwtPlotHistogram::QwtPlotHistogram |
( |
const QwtText & |
title |
) |
[explicit] |
Constructor
- Parameters:
-
| title | Title of the histogram. |
QwtPlotHistogram::~QwtPlotHistogram |
( |
|
) |
[virtual] |
Member Function Documentation
double QwtPlotHistogram::baseline |
( |
|
) |
const |
QRectF QwtPlotHistogram::boundingRect |
( |
|
) |
const [virtual] |
const QBrush & QwtPlotHistogram::brush |
( |
|
) |
const |
Calculate the area that is covered by a sample
- Parameters:
-
| sample | Sample |
| xMap | Maps x-values into pixel coordinates. |
| yMap | Maps y-values into pixel coordinates. |
- Returns:
- Rectangle, that is covered by a sample
Draw a column for a sample in Columns style().
When a symbol() has been set the symbol is used otherwise the column is displayed as plain rectangle using pen() and brush().
- Parameters:
-
| painter | Painter |
| rect | Rectangle where to paint the column in paint device coordinates |
| sample | Sample to be displayed |
- Note:
- In applications, where different intervals need to be displayed in a different way ( f.e different colors or even using differnt symbols) it is recommended to overload drawColumn().
void QwtPlotHistogram::drawColumns |
( |
QPainter * |
painter, |
|
|
const QwtScaleMap & |
xMap, |
|
|
const QwtScaleMap & |
yMap, |
|
|
int |
from, |
|
|
int |
to | |
|
) |
| | const [protected] |
Draw a histogram in Columns style()
- Parameters:
-
| painter | Painter |
| xMap | Maps x-values into pixel coordinates. |
| yMap | Maps y-values into pixel coordinates. |
| from | Index of the first sample to be painted |
| to | Index of the last sample to be painted. If to < 0 the histogram will be painted to its last point. |
- See also:
- setStyle(), style(), setSymbol(), drawColumn()
void QwtPlotHistogram::drawLegendIdentifier |
( |
QPainter * |
painter, |
|
|
const QRectF & |
rect | |
|
) |
| | const [virtual] |
Draw a plain rectangle without pen using the brush() as identifier
- Parameters:
-
| painter | Painter |
| rect | Bounding rectangle for the identifier |
Reimplemented from QwtLegendItemManager.
void QwtPlotHistogram::drawLines |
( |
QPainter * |
painter, |
|
|
const QwtScaleMap & |
xMap, |
|
|
const QwtScaleMap & |
yMap, |
|
|
int |
from, |
|
|
int |
to | |
|
) |
| | const [protected] |
Draw a histogram in Lines style()
- Parameters:
-
| painter | Painter |
| xMap | Maps x-values into pixel coordinates. |
| yMap | Maps y-values into pixel coordinates. |
| from | Index of the first sample to be painted |
| to | Index of the last sample to be painted. If to < 0 the histogram will be painted to its last point. |
- See also:
- setStyle(), style(), setPen()
void QwtPlotHistogram::drawOutline |
( |
QPainter * |
painter, |
|
|
const QwtScaleMap & |
xMap, |
|
|
const QwtScaleMap & |
yMap, |
|
|
int |
from, |
|
|
int |
to | |
|
) |
| | const [protected] |
Draw a histogram in Outline style()
- Parameters:
-
| painter | Painter |
| xMap | Maps x-values into pixel coordinates. |
| yMap | Maps y-values into pixel coordinates. |
| from | Index of the first sample to be painted |
| to | Index of the last sample to be painted. If to < 0 the histogram will be painted to its last point. |
- See also:
- setStyle(), style()
- Warning:
- The outline style requires, that the intervals are in increasing order and not overlapping.
void QwtPlotHistogram::drawSeries |
( |
QPainter * |
painter, |
|
|
const QwtScaleMap & |
xMap, |
|
|
const QwtScaleMap & |
yMap, |
|
|
const QRectF & |
canvasRect, |
|
|
int |
from, |
|
|
int |
to | |
|
) |
| | const [virtual] |
Draw a subset of the histogram samples
- Parameters:
-
| painter | Painter |
| xMap | Maps x-values into pixel coordinates. |
| yMap | Maps y-values into pixel coordinates. |
| canvasRect | Contents rect of the canvas |
| from | Index of the first sample to be painted |
| to | Index of the last sample to be painted. If to < 0 the series will be painted to its last sample. |
- See also:
- drawOutline(), drawLines(), drawColumns
Implements QwtPlotAbstractSeriesItem.
const QPen & QwtPlotHistogram::pen |
( |
|
) |
const |
int QwtPlotHistogram::rtti |
( |
|
) |
const [virtual] |
- Returns:
- QwtPlotItem::Rtti_PlotHistogram
Reimplemented from QwtPlotItem.
void QwtPlotHistogram::setBaseline |
( |
double |
value |
) |
|
Set the value of the baseline.
Each column representing an QwtIntervalSample is defined by its interval and the interval between baseline and the value of the sample.
The default value of the baseline is 0.0.
- Parameters:
-
| value | Value of the baseline |
- See also:
- baseline()
void QwtPlotHistogram::setBrush |
( |
const QBrush & |
brush |
) |
|
void QwtPlotHistogram::setPen |
( |
const QPen & |
pen |
) |
|
Initialize data with an array of samples.
- Parameters:
-
Assign a symbol.
In Column style an optional symbol can be assigned, that is responsible for displaying the rectangle that is defined by the interval and the distance between baseline() and value. When no symbol has been defined the area is displayed as plain rectangle using pen() and brush().
- See also:
- style(), symbol(), drawColumn(), pen(), brush()
- Note:
- In applications, where different intervals need to be displayed in a different way ( f.e different colors or even using differnt symbols) it is recommended to overload drawColumn().
- Returns:
- Current symbol or NULL, when no symbol has been assigned
- See also:
- setSymbol()