QwtPlotBarChart displays a series of a values as bars. More...
#include <qwt_plot_barchart.h>
Classes | |
class | PrivateData |
Public Types | |
enum | LegendMode { LegendChartTitle, LegendBarTitles } |
Legend modes. More... | |
Public Member Functions | |
virtual QwtText | barTitle (int sampleIndex) const |
Return the title of a bar. | |
virtual QRectF | boundingRect () const |
virtual void | drawSeries (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const |
LegendMode | legendMode () const |
QwtPlotBarChart (const QString &title=QString()) | |
QwtPlotBarChart (const QwtText &title) | |
virtual int | rtti () const |
void | setLegendMode (LegendMode) |
void | setSamples (const QVector< QPointF > &) |
void | setSamples (const QVector< double > &) |
void | setSamples (QwtSeriesData< QPointF > *series) |
void | setSymbol (QwtColumnSymbol *) |
Assign a symbol. | |
virtual QwtColumnSymbol * | specialSymbol (int sampleIndex, const QPointF &) const |
const QwtColumnSymbol * | symbol () const |
virtual | ~QwtPlotBarChart () |
Destructor. | |
Protected Member Functions | |
QwtColumnRect | columnRect (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, const QwtInterval &boundingInterval, const QPointF &sample) const |
virtual void | drawBar (QPainter *, int sampleIndex, const QPointF &point, const QwtColumnRect &) const |
virtual void | drawSample (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, const QwtInterval &boundingInterval, int index, const QPointF &sample) const |
QList< QwtLegendData > | legendData () const |
Return all information, that is needed to represent the item on the legend. | |
QwtGraphic | legendIcon (int index, const QSizeF &) const |
Private Member Functions | |
void | init () |
Private Attributes | |
PrivateData * | d_data |
QwtPlotBarChart displays a series of a values as bars.
Each bar might be customized individually by implementing a specialSymbol(). Otherwise it is rendered using a default symbol.
Depending on its orientation() the bars are displayed horizontally or vertically. The bars cover the interval between the baseline() and the value.
By activating the LegendBarTitles mode each sample will have its own entry on the legend.
The most common use case of a bar chart is to display a list of y coordinates, where the x coordinate is simply the index in the list. But for other situations ( f.e. when values are related to dates ) it is also possible to set x coordinates explicitly.
Definition at line 41 of file qwt_plot_barchart.h.
Legend modes.
The default setting is QwtPlotBarChart::LegendChartTitle.
LegendChartTitle |
One entry on the legend showing the default symbol and the title() of the chart
|
LegendBarTitles |
One entry for each value showing the individual symbol of the corresponding bar and the bar title.
|
Definition at line 51 of file qwt_plot_barchart.h.
QwtPlotBarChart::QwtPlotBarChart | ( | const QString & | title = QString() | ) | [explicit] |
Constructor
title | Title of the curve |
Definition at line 48 of file qwt_plot_barchart.cpp.
QwtPlotBarChart::QwtPlotBarChart | ( | const QwtText & | title | ) | [explicit] |
Constructor
title | Title of the curve |
Definition at line 38 of file qwt_plot_barchart.cpp.
QwtPlotBarChart::~QwtPlotBarChart | ( | ) | [virtual] |
Destructor.
Definition at line 55 of file qwt_plot_barchart.cpp.
QwtText QwtPlotBarChart::barTitle | ( | int | sampleIndex | ) | const [virtual] |
Return the title of a bar.
In LegendBarTitles mode the title is displayed on the legend entry corresponding to a bar.
The default implementation is a dummy, that is intended to be overloaded.
sampleIndex | Index of the bar |
Definition at line 396 of file qwt_plot_barchart.cpp.
QRectF QwtPlotBarChart::boundingRect | ( | ) | const [virtual] |
Reimplemented from QwtPlotSeriesItem.
Definition at line 183 of file qwt_plot_barchart.cpp.
QwtColumnRect QwtPlotBarChart::columnRect | ( | const QwtScaleMap & | xMap, |
const QwtScaleMap & | yMap, | ||
const QRectF & | canvasRect, | ||
const QwtInterval & | boundingInterval, | ||
const QPointF & | sample | ||
) | const [protected] |
Calculate the geometry of a bar in widget coordinates
xMap | x map |
yMap | y map |
canvasRect | Contents rect of the canvas |
boundingInterval | Bounding interval of sample values |
sample | Value of the sample |
Definition at line 259 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::drawBar | ( | QPainter * | painter, |
int | sampleIndex, | ||
const QPointF & | sample, | ||
const QwtColumnRect & | rect | ||
) | const [protected, virtual] |
Draw a bar
painter | Painter |
sampleIndex | Index of the sample represented by the bar |
sample | Value of the sample |
rect | Bounding rectangle of the bar |
Definition at line 338 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::drawSample | ( | QPainter * | painter, |
const QwtScaleMap & | xMap, | ||
const QwtScaleMap & | yMap, | ||
const QRectF & | canvasRect, | ||
const QwtInterval & | boundingInterval, | ||
int | index, | ||
const QPointF & | sample | ||
) | const [protected, virtual] |
Draw a sample
painter | Painter |
xMap | x map |
yMap | y map |
canvasRect | Contents rect of the canvas |
boundingInterval | Bounding interval of sample values |
index | Index of the sample |
sample | Value of the sample |
Definition at line 319 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::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
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 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. |
Implements QwtPlotSeriesItem.
Definition at line 220 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::init | ( | ) | [private] |
Definition at line 60 of file qwt_plot_barchart.cpp.
QList< QwtLegendData > QwtPlotBarChart::legendData | ( | ) | const [protected, virtual] |
Return all information, that is needed to represent the item on the legend.
In case of LegendBarTitles an entry for each bar is returned, otherwise the chart is represented like any other plot item from its title() and the legendIcon().
Reimplemented from QwtPlotItem.
Definition at line 413 of file qwt_plot_barchart.cpp.
QwtGraphic QwtPlotBarChart::legendIcon | ( | int | index, |
const QSizeF & | size | ||
) | const [protected, virtual] |
When the legendMode() is LegendBarTitles the icon shows the bar corresponding to index - otherwise the bar displays the default symbol.
index | Index of the legend entry |
size | Icon size |
Reimplemented from QwtPlotItem.
Definition at line 465 of file qwt_plot_barchart.cpp.
int QwtPlotBarChart::rtti | ( | ) | const [virtual] |
Reimplemented from QwtPlotItem.
Definition at line 67 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::setLegendMode | ( | LegendMode | mode | ) |
Set the mode that decides what to display on the legend
In case of LegendBarTitles barTitle() needs to be overloaded to return individual titles for each bar.
mode | New mode |
Definition at line 161 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::setSamples | ( | const QVector< QPointF > & | samples | ) |
Initialize data with an array of points
samples | Vector of points |
Definition at line 79 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::setSamples | ( | const QVector< double > & | samples | ) |
Initialize data with an array of doubles
The indices in the array are taken as x coordinate, while the doubles are interpreted as y values.
samples | Vector of y coordinates |
Definition at line 94 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::setSamples | ( | QwtSeriesData< QPointF > * | 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.
data | Data |
Definition at line 116 of file qwt_plot_barchart.cpp.
void QwtPlotBarChart::setSymbol | ( | QwtColumnSymbol * | symbol | ) |
Assign a symbol.
The bar chart 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.
symbol | Symbol |
Definition at line 131 of file qwt_plot_barchart.cpp.
QwtColumnSymbol * QwtPlotBarChart::specialSymbol | ( | int | sampleIndex, |
const QPointF & | sample | ||
) | const [virtual] |
Needs to be overloaded to return a non default symbol for a specific sample
sampleIndex | Index of the sample represented by the bar |
sample | Value of the sample |
Definition at line 374 of file qwt_plot_barchart.cpp.
const QwtColumnSymbol * QwtPlotBarChart::symbol | ( | ) | const |
Definition at line 147 of file qwt_plot_barchart.cpp.
PrivateData* QwtPlotBarChart::d_data [private] |
Reimplemented from QwtPlotAbstractBarChart.
Definition at line 119 of file qwt_plot_barchart.h.