QwtPlotMultiBarChart - Man Page

QwtPlotMultiBarChart displays a series of a samples that consist each of a set of values.

Synopsis

#include <qwt_plot_multi_barchart.h>

Inherits QwtPlotAbstractBarChart, and QwtSeriesStore< QwtSetSample >.

Public Types

enum ChartStyle { Grouped, Stacked }
Chart styles.

Public Member Functions

QwtPlotMultiBarChart (const QString &title=QString())
QwtPlotMultiBarChart (const QwtText &title)
virtual ~QwtPlotMultiBarChart ()
Destructor.
virtual int rtti () const
void setBarTitles (const QList< QwtText > &)
Set the titles for the bars.
QList< QwtText > barTitles () const
void setSamples (const QVector< QwtSetSample > &)
void setSamples (const QVector< QVector< double > > &)
void setSamples (QwtSeriesData< QwtSetSample > *)
void setStyle (ChartStyle style)
ChartStyle style () const
void setSymbol (int valueIndex, QwtColumnSymbol *)
Add a symbol to the symbol map.
const QwtColumnSymbol * symbol (int valueIndex) const
void resetSymbolMap ()
virtual void drawSeries (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const
virtual QRectF boundingRect () const
virtual QList< QwtLegendData > legendData () const
virtual QwtGraphic legendIcon (int index, const QSizeF &) const

Protected Member Functions

QwtColumnSymbol * symbol (int valueIndex)
virtual QwtColumnSymbol * specialSymbol (int sampleIndex, int valueIndex) const
Create a symbol for special values.
virtual void drawSample (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, const QwtInterval &boundingInterval, int index, const QwtSetSample &sample) const
virtual void drawBar (QPainter *, int sampleIndex, int valueIndex, const QwtColumnRect &) const
void drawStackedBars (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int index, double sampleWidth, const QwtSetSample &sample) const
void drawGroupedBars (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int index, double sampleWidth, const QwtSetSample &sample) const

Detailed Description

QwtPlotMultiBarChart displays a series of a samples that consist each of a set of values.

Each value is displayed as a bar, the bars of each set can be organized side by side or accumulated.

Each bar of a set is rendered by a QwtColumnSymbol, that is set by setSymbol(). The bars of different sets use the same symbols. Exceptions are possible by overloading specialSymbol() or overloading drawBar().

Depending on its orientation() the bars are displayed horizontally or vertically. The bars cover the interval between the baseline() and the value.

In opposite to most other plot items, QwtPlotMultiBarChart returns more than one entry for the legend - one for each symbol.

See also

QwtPlotBarChart, QwtPlotHistogram QwtPlotSeriesItem::orientation(), QwtPlotAbstractBarChart::baseline()

Member Enumeration Documentation

enum QwtPlotMultiBarChart::ChartStyle

Chart styles. The default setting is QwtPlotMultiBarChart::Grouped.

See also

setStyle(), style()

Enumerator

Grouped

The bars of a set are displayed side by side.

Stacked

The bars are displayed on top of each other accumulating to a single bar. All values of a set need to have the same sign.

Constructor & Destructor Documentation

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

Constructor

Parameters

title Title of the chart

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

Constructor

Parameters

title Title of the chart

Member Function Documentation

QList< QwtText > QwtPlotMultiBarChart::barTitles () const

Returns

Bar titles

See also

setBarTitles(), legendData()

QRectF QwtPlotMultiBarChart::boundingRect () const [virtual]

Returns

Bounding rectangle of all samples. For an empty series the rectangle is invalid.

Reimplemented from QwtPlotSeriesItem.

void QwtPlotMultiBarChart::drawBar (QPainter * painter, int sampleIndex, int valueIndex, const QwtColumnRect & rect) const [protected], [virtual]

Draw a bar

Parameters

painter Painter
sampleIndex Index of the sample - might be -1 when the bar is painted for the legend
valueIndex Index of a value in a set
rect Directed target rectangle for the bar

See also

drawSeries()

void QwtPlotMultiBarChart::drawGroupedBars (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int index, double sampleWidth, const QwtSetSample & sample) const [protected]

Draw a grouped sample

Parameters

painter Painter
xMap x map
yMap y map
canvasRect Contents rectangle of the canvas
index Index of the sample to be painted
sampleWidth Boundng width for all bars of the smaple
sample Sample

See also

drawSeries(), sampleWidth()

void QwtPlotMultiBarChart::drawSample (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, const QwtInterval & boundingInterval, int index, const QwtSetSample & sample) const [protected], [virtual]

Draw a sample

Parameters

painter Painter
xMap x map
yMap y map
canvasRect Contents rectangle of the canvas
boundingInterval Bounding interval of sample values
index Index of the sample to be painted
sample Sample value

See also

drawSeries()

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

Draw an interval of the bar chart

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

drawSymbols()

Implements QwtPlotSeriesItem.

void QwtPlotMultiBarChart::drawStackedBars (QPainter * painter, const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int index, double sampleWidth, const QwtSetSample & sample) const [protected]

Draw a stacked sample

Parameters

painter Painter
xMap x map
yMap y map
canvasRect Contents rectangle of the canvas
index Index of the sample to be painted
sampleWidth Width of the bars
sample Sample

See also

drawSeries(), sampleWidth()

QList< QwtLegendData > QwtPlotMultiBarChart::legendData () const [virtual]

Returns

Information to be displayed on the legend

The chart is represented by a list of entries - one for each bar title. Each element contains a bar title and an icon showing its corresponding bar.

See also

barTitles(), legendIcon(), legendIconSize()

Reimplemented from QwtPlotItem.

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

Returns

Icon for representing a bar on the legend

Parameters

index Index of the bar
size Icon size

Returns

An icon showing a bar

See also

drawBar(), legendData()

Reimplemented from QwtPlotItem.

void QwtPlotMultiBarChart::resetSymbolMap ()

Remove all symbols from the symbol map

int QwtPlotMultiBarChart::rtti () const [virtual]

Returns

QwtPlotItem::Rtti_PlotBarChart

Reimplemented from QwtPlotItem.

void QwtPlotMultiBarChart::setBarTitles (const QList< QwtText > & titles)

Set the titles for the bars. The titles are used for the legend.

Parameters

titles Bar titles

See also

barTitles(), legendData()

void QwtPlotMultiBarChart::setSamples (const QVector< QVector< double > > & samples)

Initialize data with an array of samples.

Parameters

samples Vector of points

void QwtPlotMultiBarChart::setSamples (const QVector< QwtSetSample > & samples)

Initialize data with an array of samples.

Parameters

samples Vector of points

void QwtPlotMultiBarChart::setSamples (QwtSeriesData< QwtSetSample > * data)

Assign a series of samples

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.

void QwtPlotMultiBarChart::setStyle (ChartStyle style)

Set the style of the chart

Parameters

style Chart style

See also

style()

void QwtPlotMultiBarChart::setSymbol (int valueIndex, QwtColumnSymbol * symbol)

Add a symbol to the symbol map. Assign a default symbol for drawing the bar representing all values with the same index in a set.

Parameters

valueIndex Index of a value in a set
symbol Symbol used for drawing a bar

See also

symbol(), resetSymbolMap(), specialSymbol()

QwtColumnSymbol * QwtPlotMultiBarChart::specialSymbol (int sampleIndex, int valueIndex) const [protected], [virtual]

Create a symbol for special values. Usually the symbols for displaying a bar are set by setSymbols() and common for all sets. By overloading specialSymbol() it is possible to create a temporary symbol() for displaying a special value.

The symbol has to be created by new each time specialSymbol() is called. As soon as the symbol is painted this symbol gets deleted.

When no symbol ( NULL ) is returned, the value will be displayed with the standard symbol that is used for all symbols with the same valueIndex.

Parameters

sampleIndex Index of the sample
valueIndex Index of the value in the set

Returns

NULL, meaning that the value is not special

QwtPlotMultiBarChart::ChartStyle QwtPlotMultiBarChart::style () const

Returns

Style of the chart

See also

setStyle()

QwtColumnSymbol * QwtPlotMultiBarChart::symbol (int valueIndex) [protected]

Find a symbol in the symbol map

Parameters

valueIndex Index of a value in a set

Returns

The symbol, that had been set by setSymbol() or NULL.

See also

setSymbol(), specialSymbol(), drawBar()

const QwtColumnSymbol * QwtPlotMultiBarChart::symbol (int valueIndex) const

Find a symbol in the symbol map

Parameters

valueIndex Index of a value in a set

Returns

The symbol, that had been set by setSymbol() or NULL.

See also

setSymbol(), specialSymbol(), drawBar()

Author

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

Info

Mon Jun 1 2020 Version 6.1.5 Qwt User's Guide