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::null)
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 barIndex, QwtColumnSymbol *symbol)
Add a symbol to the symbol map.
const QwtColumnSymbol * symbol (int barIndex) 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 barIndex)
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 barIndex, 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::null) [explicit]
ConstructorParameters:
- title Title of the chart
QwtPlotMultiBarChart::QwtPlotMultiBarChart (const QwtText &title) [explicit]
ConstructorParameters:
- 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, intsampleIndex, intvalueIndex, const QwtColumnRect &rect) const [protected], [virtual]
Draw a barParameters:
-
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, intindex, doublesampleWidth, const QwtSetSample &sample) const [protected]
Draw a grouped sampleParameters:
-
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, intindex, const QwtSetSample &sample) const [protected], [virtual]
Draw a sampleParameters:
-
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, intfrom, intto) const [virtual]
Draw an interval of the bar chartParameters:
-
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, intindex, doublesampleWidth, const QwtSetSample &sample) const [protected]
Draw a stacked sampleParameters:
-
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 (intindex, 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 mapint 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< QwtSetSample > &samples)
Initialize data with an array of samples.Parameters:
- samples Vector of points
void QwtPlotMultiBarChart::setSamples (const QVector< QVector< double > > &samples)
Initialize data with an array of samples.Parameters:
- samples Vector of points
void QwtPlotMultiBarChart::setSamples (QwtSeriesData< QwtSetSample > *data)
Assign a series of samplessetSamples() 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 (ChartStylestyle)
Set the style of the chartParameters:
- style Chart style
See Also:
- style()
void QwtPlotMultiBarChart::setSymbol (intvalueIndex, 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 (intsampleIndex, intvalueIndex) 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()
const QwtColumnSymbol * QwtPlotMultiBarChart::symbol (intvalueIndex) const
Find a symbol in the symbol mapParameters:
- valueIndex Index of a value in a set
Returns:
- The symbol, that had been set by setSymbol() or NULL.
See Also:
- setSymbol(), specialSymbol(), drawBar()
QwtColumnSymbol * QwtPlotMultiBarChart::symbol (intvalueIndex) [protected]
Find a symbol in the symbol mapParameters:
- 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.