QWT API (English) 7.0.1
Qt Widget Library for Technical Applications - English API Documentation
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
QwtPlotMultiBarChart Class Reference

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

#include <qwt_plot_multi_barchart.h>

Inheritance diagram for QwtPlotMultiBarChart:
QwtPlotAbstractBarChart QwtSeriesStore< QwtSetSample > QwtPlotSeriesItem QwtAbstractSeriesStore QwtPlotItem QwtAbstractSeriesStore

Classes

class  PrivateData
 

Public Types

enum  ChartStyle { Grouped , Stacked }
 Chart styles. More...
 
- Public Types inherited from QwtPlotAbstractBarChart
enum  LayoutPolicy { AutoAdjustSamples , ScaleSamplesToAxes , ScaleSampleToCanvas , FixedSampleSize }
 Mode how to calculate the bar width. More...
 
- 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_PlotArrowMarker , Rtti_PlotBoxChart ,
  Rtti_PlotUserItem = 1000
}
 Runtime type information. More...
 
enum  ItemAttribute { Legend = 0x01 , AutoScale = 0x02 , Margins = 0x04 }
 Plot Item Attributes. More...
 
enum  ItemInterest { ScaleInterest = 0x01 , LegendInterest = 0x02 }
 Plot Item Interests. More...
 
enum  RenderHint { RenderAntialiased = 0x1 }
 Render hints . More...
 

Public Member Functions

 QwtPlotMultiBarChart (const QString &title=QString())
 Constructor.
 
 QwtPlotMultiBarChart (const QwtText &title)
 Constructor with title.
 
virtual ~QwtPlotMultiBarChart ()
 Destructor.
 
virtual int rtti () const override
 Get the runtime type information.
 
void setBarTitles (const QList< QwtText > &)
 Set the bar titles.
 
QList< QwtTextbarTitles () const
 Get the bar titles.
 
void setSamples (const QVector< QwtSetSample > &)
 Set samples from a vector of QwtSetSample.
 
void setSamples (const QVector< QVector< double > > &)
 Set samples from a vector of vectors.
 
void setSamples (QwtSeriesData< QwtSetSample > *)
 Set samples from a series data.
 
void setStyle (ChartStyle style)
 Set the chart style.
 
ChartStyle style () const
 Get the chart style.
 
void setSymbol (int valueIndex, QwtColumnSymbol *)
 Set the symbol for a specific value index.
 
const QwtColumnSymbolsymbol (int valueIndex) const
 Get the symbol for a specific value index.
 
void resetSymbolMap ()
 Reset the symbol map.
 
virtual void drawSeries (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int from, int to) const override
 Draw the series.
 
virtual QRectF boundingRect () const override
 Get the bounding rectangle.
 
virtual QList< QwtLegendDatalegendData () const override
 Get the legend data.
 
virtual QwtGraphic legendIcon (int index, const QSizeF &) const override
 Get the legend icon.
 
- Public Member Functions inherited from QwtPlotAbstractBarChart
 QwtPlotAbstractBarChart (const QwtText &title)
 Constructor.
 
virtual ~QwtPlotAbstractBarChart ()
 Destructor .
 
void setLayoutPolicy (LayoutPolicy)
 Set the layout policy.
 
LayoutPolicy layoutPolicy () const
 Get the layout policy.
 
void setLayoutHint (double)
 Set the layout hint.
 
double layoutHint () const
 Get the layout hint.
 
void setSpacing (int)
 Set the spacing between bars.
 
int spacing () const
 Get the spacing between bars.
 
void setMargin (int)
 Set the margin around the bars.
 
int margin () const
 Get the margin around the bars.
 
void setBaseline (double)
 Set the baseline value.
 
double baseline () const
 Get the baseline value.
 
virtual void getCanvasMarginHint (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, double &left, double &top, double &right, double &bottom) const override
 Calculate a hint for the canvas margin.
 
- Public Member Functions inherited from QwtPlotSeriesItem
 QwtPlotSeriesItem (const QString &title=QString())
 Constructor.
 
 QwtPlotSeriesItem (const QwtText &title)
 Constructor.
 
virtual ~QwtPlotSeriesItem ()
 Destructor .
 
void setOrientation (Qt::Orientation)
 Set the orientation of the item.
 
Qt::Orientation orientation () const
 Get the orientation of the plot item.
 
virtual void draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const override
 Draw the complete series.
 
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &) override
 Update the scale divisions.
 
- Public Member Functions inherited from QwtPlotItem
 QwtPlotItem ()
 Default constructor.
 
 QwtPlotItem (const QString &title)
 Constructor with title as QString.
 
 QwtPlotItem (const QwtText &title)
 Constructor with title as QwtText.
 
virtual ~QwtPlotItem ()
 Destructor.
 
void attach (QwtPlot *plot)
 Attach the item to a plot.
 
void detach ()
 Detach the item from the plot.
 
QwtPlotplot () const
 Get the plot the item is attached to.
 
void setTitle (const QString &title)
 Set the title using a QString.
 
void setTitle (const QwtText &title)
 Set the title using a QwtText.
 
const QwtTexttitle () const
 Get the title.
 
void setItemAttribute (ItemAttribute, bool on=true)
 Set an item attribute.
 
bool testItemAttribute (ItemAttribute) const
 Test an item attribute.
 
void setItemInterest (ItemInterest, bool on=true)
 Set an item interest.
 
bool testItemInterest (ItemInterest) const
 Test an item interest.
 
void setRenderHint (RenderHint, bool on=true)
 Set a render hint.
 
bool testRenderHint (RenderHint) const
 Test a render hint.
 
void setRenderThreadCount (uint numThreads)
 Set the number of render threads.
 
uint renderThreadCount () const
 Get the number of render threads.
 
void setLegendIconSize (const QSize &)
 Set the legend icon size.
 
QSize legendIconSize () const
 Get the legend icon size.
 
double z () const
 Get the z-value.
 
void setZ (double z)
 Set the z-value.
 
void show ()
 Show the item.
 
void hide ()
 Hide the item.
 
virtual void setVisible (bool)
 Set the visibility.
 
bool isVisible () const
 Check if the item is visible.
 
void setAxes (QwtAxisId xAxis, QwtAxisId yAxis)
 Set both axes.
 
void setXAxis (QwtAxisId)
 Set the x-axis.
 
QwtAxisId xAxis () const
 Get the x-axis.
 
void setYAxis (QwtAxisId)
 Set the y-axis.
 
QwtAxisId yAxis () const
 Get the y-axis.
 
virtual void itemChanged ()
 Notify the plot that the item has changed.
 
virtual void legendChanged ()
 Notify the item that the legend has changed.
 
virtual void updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &)
 Update the item with changes of the legend.
 
QRectF scaleRect (const QwtScaleMap &, const QwtScaleMap &) const
 Calculate the scale rectangle.
 
QRectF paintRect (const QwtScaleMap &, const QwtScaleMap &) const
 Calculate the paint rectangle.
 
- Public Member Functions inherited from QwtSeriesStore< QwtSetSample >
void setData (QwtSeriesData< QwtSetSample > *series)
 
QwtSeriesData< QwtSetSample > * data ()
 
const QwtSeriesData< QwtSetSample > * data () const
 
QwtSetSample sample (size_t index) const
 
virtual size_t dataSize () const override
 
virtual QRectF dataRect () const override
 
virtual void setRectOfInterest (const QRectF &rect) override
 Set a the "rectangle of interest" for the stored series.
 
QwtSeriesData< QwtSetSample > * swapData (QwtSeriesData< QwtSetSample > *series)
 

Protected Member Functions

QwtColumnSymbolsymbol (int valueIndex)
 Get the symbol for a specific value index.
 
virtual QwtColumnSymbolspecialSymbol (int sampleIndex, int valueIndex) const
 Get a special symbol for a specific sample and value index.
 
virtual void drawSample (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, const QwtInterval &boundingInterval, int index, const QwtSetSample &) const
 Draw a sample.
 
virtual void drawBar (QPainter *, int sampleIndex, int valueIndex, const QwtColumnRect &) const
 Draw a bar.
 
void drawStackedBars (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int index, double sampleWidth, const QwtSetSample &) const
 Draw stacked bars.
 
void drawGroupedBars (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, int index, double sampleWidth, const QwtSetSample &) const
 Draw grouped bars.
 
- Protected Member Functions inherited from QwtPlotAbstractBarChart
double sampleWidth (const QwtScaleMap &map, double canvasSize, double boundingSize, double value) const
 Calculate the width for a sample in paint device coordinates.
 
- 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
 Create a default icon.
 

Detailed Description

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

Member Enumeration Documentation

◆ ChartStyle

Chart styles.

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() [1/2]

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

Constructor.

◆ QwtPlotMultiBarChart() [2/2]

QwtPlotMultiBarChart::QwtPlotMultiBarChart ( const QwtText title)
explicit

Constructor with title.

Constructor.

◆ ~QwtPlotMultiBarChart()

QwtPlotMultiBarChart::~QwtPlotMultiBarChart ( )
virtual

Destructor.

Destructor

.

Member Function Documentation

◆ barTitles()

QList< QwtText > QwtPlotMultiBarChart::barTitles ( ) const

Get the bar titles.

◆ boundingRect()

QRectF QwtPlotMultiBarChart::boundingRect ( ) const
overridevirtual

Get the bounding rectangle.

Get the bounding rectangle of all samples.

Reimplemented from QwtPlotSeriesItem.

◆ drawBar()

void QwtPlotMultiBarChart::drawBar ( QPainter *  painter,
int  sampleIndex,
int  valueIndex,
const QwtColumnRect rect 
) const
protectedvirtual

Draw a bar.

Parameters
painterPainter
sampleIndexIndex of the sample - might be -1 when the bar is painted for the legend
valueIndexIndex of a value in a set
rectDirected target rectangle for the bar
See also
drawSeries()

◆ drawGroupedBars()

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

Draw grouped bars.

Draw a grouped sample.

Parameters
painterPainter
xMapx map
yMapy map
canvasRectContents rectangle of the canvas
indexIndex of the sample to be painted
sampleWidthBounding width for all bars of the sample
sampleSample
See also
drawSeries(), sampleWidth()

◆ drawSample()

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

Draw a sample.

Parameters
painterPainter
xMapx map
yMapy map
canvasRectContents rectangle of the canvas
boundingIntervalBounding interval of sample values
indexIndex of the sample to be painted
sampleSample value
See also
drawSeries()

◆ drawSeries()

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

Draw the series.

Draw an interval of the bar chart.

Implements QwtPlotSeriesItem.

◆ drawStackedBars()

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

Draw stacked bars.

Draw a stacked sample.

Parameters
painterPainter
xMapx map
yMapy map
canvasRectContents rectangle of the canvas
indexIndex of the sample to be painted
sampleWidthWidth of the bars
sampleSample
See also
drawSeries(), sampleWidth()

◆ legendData()

QList< QwtLegendData > QwtPlotMultiBarChart::legendData ( ) const
overridevirtual

Get the legend data.

Get information to be displayed on the legend.

Reimplemented from QwtPlotItem.

◆ legendIcon()

QwtGraphic QwtPlotMultiBarChart::legendIcon ( int  index,
const QSizeF &  size 
) const
overridevirtual

Get the legend icon.

Get icon for representing a bar on the legend.

Reimplemented from QwtPlotItem.

◆ resetSymbolMap()

void QwtPlotMultiBarChart::resetSymbolMap ( )

Reset the symbol map.

Remove all symbols from the symbol map

.

◆ rtti()

int QwtPlotMultiBarChart::rtti ( ) const
overridevirtual

Get the runtime type information.

Reimplemented from QwtPlotItem.

◆ setBarTitles()

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

Set the bar titles.

Set the titles for the bars.

◆ setSamples() [1/3]

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

Set samples from a vector of vectors.

Initialize data with an array of samples.

◆ setSamples() [2/3]

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

Set samples from a vector of QwtSetSample.

Initialize data with an array of samples.

◆ setSamples() [3/3]

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

Set samples from a series data.

Assign a series of samples.

◆ setStyle()

void QwtPlotMultiBarChart::setStyle ( ChartStyle  style)

Set the chart style.

Set the style of the chart.

◆ setSymbol()

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

Set the symbol for a specific value index.

Add a symbol to the symbol map.

◆ specialSymbol()

QwtColumnSymbol * QwtPlotMultiBarChart::specialSymbol ( int  sampleIndex,
int  valueIndex 
) const
protectedvirtual

Get a special symbol for a specific sample and value index.

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 ( nullptr ) is returned, the value will be displayed with the standard symbol that is used for all symbols with the same valueIndex.

Parameters
sampleIndexIndex of the sample
valueIndexIndex of the value in the set
Returns
nullptr, meaning that the value is not special

◆ style()

QwtPlotMultiBarChart::ChartStyle QwtPlotMultiBarChart::style ( ) const

Get the chart style.

Get the style of the chart.

◆ symbol() [1/2]

QwtColumnSymbol * QwtPlotMultiBarChart::symbol ( int  valueIndex)
protected

Get the symbol for a specific value index.

Find a symbol in the symbol map.

Parameters
valueIndexIndex of a value in a set
Returns
The symbol, that had been set by setSymbol() or nullptr.
See also
setSymbol(), specialSymbol(), drawBar()

◆ symbol() [2/2]

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

Get the symbol for a specific value index.

Find a symbol in the symbol map.


The documentation for this class was generated from the following files: