QwtPlotAbstractBarChart - Man Page

Abstract base class for bar chart items.

Synopsis

#include <qwt_plot_abstract_barchart.h>

Inherits QwtPlotSeriesItem.

Inherited by QwtPlotBarChart, and QwtPlotMultiBarChart.

Public Types

enum LayoutPolicy { AutoAdjustSamples, ScaleSamplesToAxes, ScaleSampleToCanvas, FixedSampleSize }
Mode how to calculate the bar width.

Public Member Functions

QwtPlotAbstractBarChart (const QwtText &title)
virtual ~QwtPlotAbstractBarChart ()
Destructor.
void setLayoutPolicy (LayoutPolicy)
LayoutPolicy layoutPolicy () const
void setLayoutHint (double)
double layoutHint () const
void setSpacing (int)
Set the spacing.
int spacing () const
void setMargin (int)
Set the margin.
int margin () const
void setBaseline (double)
Set the baseline.
double baseline () const
virtual void getCanvasMarginHint (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect, double &left, double &top, double &right, double &bottom) const
Calculate a hint for the canvas margin.

Protected Member Functions

double sampleWidth (const QwtScaleMap &map, double canvasSize, double boundingSize, double value) const

Detailed Description

Abstract base class for bar chart items.

In opposite to almost all other plot items bar charts can't be displayed inside of their bounding rectangle and need a special API how to calculate the width of the bars and how they affect the layout of the attached plot.

Member Enumeration Documentation

enum QwtPlotAbstractBarChart::LayoutPolicy

Mode how to calculate the bar width. setLayoutPolicy(), setLayoutHint(), barWidthHint()

Enumerator

AutoAdjustSamples

The sample width is calculated by dividing the bounding rectangle by the number of samples. The layoutHint() is used as a minimum width in paint device coordinates.

See also

boundingRectangle()

ScaleSamplesToAxes

layoutHint() defines an interval in axis coordinates

ScaleSampleToCanvas

The bar width is calculated by multiplying layoutHint() with the height or width of the canvas.

See also

boundingRectangle()

FixedSampleSize

layoutHint() defines a fixed width in paint device coordinates.

Constructor & Destructor Documentation

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

Constructor

Parameters

title Title of the chart

Member Function Documentation

double QwtPlotAbstractBarChart::baseline () const

Returns

Value for the origin of the bar chart

See also

setBaseline(), QwtPlotSeriesItem::orientation()

void QwtPlotAbstractBarChart::getCanvasMarginHint (const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, double & left, double & top, double & right, double & bottom) const [virtual]

Calculate a hint for the canvas margin. Bar charts need to reserve some space for displaying the bars for the first and the last sample. The hint is calculated from the layoutHint() depending on the layoutPolicy().

The margins are in target device coordinates ( pixels on screen )

Parameters

xMap Maps x-values into pixel coordinates.
yMap Maps y-values into pixel coordinates.
canvasRect Contents rectangle of the canvas in painter coordinates
left Returns the left margin
top Returns the top margin
right Returns the right margin
bottom Returns the bottom margin

Returns

Margin

See also

layoutPolicy(), layoutHint(), QwtPlotItem::Margins QwtPlot::getCanvasMarginsHint(), QwtPlot::updateCanvasMargins()

Reimplemented from QwtPlotItem.

double QwtPlotAbstractBarChart::layoutHint () const

The combination of layoutPolicy() and layoutHint() define how the width of the bars is calculated

Returns

Layout policy of the chart item

See also

LayoutPolicy, setLayoutHint(), layoutPolicy()

QwtPlotAbstractBarChart::LayoutPolicy QwtPlotAbstractBarChart::layoutPolicy () const

The combination of layoutPolicy() and layoutHint() define how the width of the bars is calculated

Returns

Layout policy of the chart item

See also

setLayoutPolicy(), layoutHint()

int QwtPlotAbstractBarChart::margin () const

Returns

Margin between the outmost bars and the contentsRect() of the canvas.

See also

setMargin(), spacing()

double QwtPlotAbstractBarChart::sampleWidth (const QwtScaleMap & map, double canvasSize, double boundingSize, double value) const [protected]

Calculate the width for a sample in paint device coordinates

Parameters

map Scale map for the corresponding scale
canvasSize Size of the canvas in paint device coordinates
boundingSize Bounding size of the chart in plot coordinates ( used in AutoAdjustSamples mode )
value Value of the sample

Returns

Sample width

See also

layoutPolicy(), layoutHint()

void QwtPlotAbstractBarChart::setBaseline (double value)

Set the baseline. The baseline is the origin for the chart. Each bar is painted from the baseline in the direction of the sample value. In case of a horizontal orientation() the baseline is interpreted as x - otherwise as y - value.

The default value for the baseline is 0.

Parameters

value Value for the baseline

See also

baseline(), QwtPlotSeriesItem::orientation()

void QwtPlotAbstractBarChart::setLayoutHint (double hint)

The combination of layoutPolicy() and layoutHint() define how the width of the bars is calculated

Parameters

hint Layout hint

See also

LayoutPolicy, layoutPolicy(), layoutHint()

void QwtPlotAbstractBarChart::setLayoutPolicy (LayoutPolicy policy)

The combination of layoutPolicy() and layoutHint() define how the width of the bars is calculated

Parameters

policy Layout policy

See also

layoutPolicy(), layoutHint()

void QwtPlotAbstractBarChart::setMargin (int margin)

Set the margin. The margin is the distance between the outmost bars and the contentsRect() of the canvas. The default setting is 5 pixels.

Parameters

margin Margin

See also

spacing(), margin()

void QwtPlotAbstractBarChart::setSpacing (int spacing)

Set the spacing. The spacing is the distance between 2 samples ( bars for QwtPlotBarChart or a group of bars for QwtPlotMultiBarChart ) in paint device coordinates.

See also

spacing()

int QwtPlotAbstractBarChart::spacing () const

Returns

Spacing between 2 samples ( bars or groups of bars )

See also

setSpacing(), margin()

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