QwtPlot Class Reference

Inheritance diagram for QwtPlot:

Inheritance graph
[legend]
Collaboration diagram for QwtPlot:

Collaboration graph
[legend]
List of all members.

Detailed Description

A 2-D plotting widget.

QwtPlot is a widget for plotting two-dimensional graphs. An unlimited number of plot items can be displayed on its canvas. Plot items might be curves (QwtPlotCurve), markers (QwtPlotMarker), the grid (QwtPlotGrid), or anything else derived from QwtPlotItem. A plot can have up to four axes, with each plot item attached to an x- and a y axis. The scales at the axes can be explicitely set (QwtScaleDiv), or are calculated from the plot items, using algorithms (QwtScaleEngine) which can be configured separately for each axis.

plot.png

Example
The following example shows (schematically) the most simple way to use QwtPlot. By default, only the left and bottom axes are visible and their scales are computed automatically.
#include <qwt_plot.h>
#include <qwt_plot_curve.h>

QwtPlot *myPlot;
double x[100], y1[100], y2[100];        // x and y values

myPlot = new QwtPlot("Two Curves", parent);

// add curves
QwtPlotCurve *curve1 = new QwtPlotCurve("Curve 1");
QwtPlotCurve *curve2 = new QwtPlotCurve("Curve 2");

getSomeValues(x, y1, y2);

// copy the data into the curves
curve1->setData(x, y1, 100);
curve2->setData(x, y2, 100);

curve1->attach(myPlot);
curve2->attach(myPlot);

// finally, refresh the plot
myPlot->replot();

Definition at line 77 of file qwt_plot.h.

Public Types

enum  Axis {
  yLeft,
  yRight,
  xBottom,
  xTop,
  axisCnt
}
enum  LegendPosition {
  LeftLegend,
  RightLegend,
  BottomLegend,
  TopLegend,
  ExternalLegend
}

Public Slots

void clear ()
virtual void replot ()
void autoRefresh ()

Signals

void legendClicked (QwtPlotItem *plotItem)
void legendChecked (QwtPlotItem *plotItem, bool on)

Public Member Functions

 QwtPlot (QWidget *=NULL)
 QwtPlot (const QwtText &title, QWidget *p=NULL)
virtual ~QwtPlot ()
void applyProperties (const QString &)
QString grabProperties () const
void setAutoReplot (bool tf=true)
bool autoReplot () const
void print (QPaintDevice &p, const QwtPlotPrintFilter &=QwtPlotPrintFilter()) const
virtual void print (QPainter *, const QRect &rect, const QwtPlotPrintFilter &=QwtPlotPrintFilter()) const
QwtPlotLayoutplotLayout ()
const QwtPlotLayoutplotLayout () const
void setMargin (int margin)
int margin () const
void setTitle (const QString &)
void setTitle (const QwtText &t)
QwtText title () const
QwtTextLabeltitleLabel ()
const QwtTextLabeltitleLabel () const
QwtPlotCanvascanvas ()
const QwtPlotCanvascanvas () const
void setCanvasBackground (const QColor &c)
const QColor & canvasBackground () const
void setCanvasLineWidth (int w)
int canvasLineWidth () const
virtual QwtScaleMap canvasMap (int axisId) const
double invTransform (int axisId, int pos) const
int transform (int axisId, double value) const
QwtScaleEngineaxisScaleEngine (int axisId)
const QwtScaleEngineaxisScaleEngine (int axisId) const
void setAxisScaleEngine (int axisId, QwtScaleEngine *)
void setAxisAutoScale (int axisId)
bool axisAutoScale (int axisId) const
void enableAxis (int axisId, bool tf=true)
bool axisEnabled (int axisId) const
void setAxisFont (int axisId, const QFont &f)
QFont axisFont (int axisId) const
void setAxisScale (int axisId, double min, double max, double step=0)
void setAxisScaleDiv (int axisId, const QwtScaleDiv &)
void setAxisScaleDraw (int axisId, QwtScaleDraw *)
const QwtScaleDivaxisScaleDiv (int axisId) const
QwtScaleDivaxisScaleDiv (int axisId)
const QwtScaleDrawaxisScaleDraw (int axisId) const
QwtScaleDrawaxisScaleDraw (int axisId)
const QwtScaleWidgetaxisWidget (int axisId) const
QwtScaleWidgetaxisWidget (int axisId)
void setAxisLabelAlignment (int axisId, Qt::Alignment)
void setAxisLabelRotation (int axisId, double rotation)
void setAxisTitle (int axisId, const QString &)
void setAxisTitle (int axisId, const QwtText &)
QwtText axisTitle (int axisId) const
void setAxisMaxMinor (int axisId, int maxMinor)
int axisMaxMajor (int axisId) const
void setAxisMaxMajor (int axisId, int maxMajor)
int axisMaxMinor (int axisId) const
void insertLegend (QwtLegend *, LegendPosition=QwtPlot::RightLegend, double ratio=-1.0)
QwtLegendlegend ()
const QwtLegendlegend () const
virtual void polish ()
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
virtual void updateLayout ()
virtual bool event (QEvent *)

Protected Slots

virtual void legendItemClicked ()
virtual void legendItemChecked (bool)

Protected Member Functions

virtual void drawCanvas (QPainter *)
virtual void drawItems (QPainter *, const QRect &, const QwtScaleMap maps[axisCnt], const QwtPlotPrintFilter &) const
virtual void updateTabOrder ()
void updateAxes ()
virtual void resizeEvent (QResizeEvent *e)
virtual void printLegendItem (QPainter *, const QWidget *, const QRect &) const
virtual void printTitle (QPainter *, const QRect &) const
virtual void printScale (QPainter *, int axisId, int startDist, int endDist, int baseDist, const QRect &) const
virtual void printCanvas (QPainter *, const QRect &, const QwtScaleMap maps[axisCnt], const QwtPlotPrintFilter &) const
virtual void printLegend (QPainter *, const QRect &) const

Static Protected Member Functions

static bool axisValid (int axisId)

Friends

class QwtPlotCanvas


Member Enumeration Documentation

enum QwtPlot::Axis

Axis index.

Enumerator:
yLeft 
yRight 
xBottom 
xTop 
axisCnt 

Definition at line 87 of file qwt_plot.h.

enum QwtPlot::LegendPosition

Position of the legend, relative to the canvas.

ExternalLegend means that only the content of the legend will be handled by QwtPlot, but not its geometry. This might be interesting if an application wants to have a legend in an external window.

Enumerator:
LeftLegend 
RightLegend 
BottomLegend 
TopLegend 
ExternalLegend 

Definition at line 105 of file qwt_plot.h.


Constructor & Destructor Documentation

QwtPlot::QwtPlot ( QWidget *  parent = NULL  )  [explicit]

Constructor.

Parameters:
parent Parent widget

Definition at line 53 of file qwt_plot.cpp.

QwtPlot::QwtPlot ( const QwtText title,
QWidget *  parent = NULL 
) [explicit]

Constructor.

Parameters:
title Title text
parent Parent widget

Definition at line 64 of file qwt_plot.cpp.

References title().

QwtPlot::~QwtPlot (  )  [virtual]

Destructor.

Definition at line 85 of file qwt_plot.cpp.

References QwtPlotDict::autoDelete(), QwtPlotDict::detachItems(), and QwtPlotItem::Rtti_PlotItem.


Member Function Documentation

void QwtPlot::setAutoReplot ( bool  tf = true  ) 

Set or reset the autoReplot option If the autoReplot option is set, the plot will be updated implicitly by manipulating member functions. Since this may be time-consuming, it is recommended to leave this option switched off and call replot() explicitly if necessary.

The autoReplot option is set to false by default, which means that the user has to call replot() in order to make changes visible.

Parameters:
tf true or false. Defaults to true.
See also:
replot()

Definition at line 187 of file qwt_plot.cpp.

Referenced by QwtPlotPrintFilter::apply(), QwtPlotCanvas::drawContents(), QwtPlotPanner::moveCanvas(), replot(), QwtPlotZoomer::rescale(), QwtPlotMagnifier::rescale(), and QwtPlotPrintFilter::reset().

bool QwtPlot::autoReplot (  )  const

Returns:
true if the autoReplot option is set.

Definition at line 195 of file qwt_plot.cpp.

Referenced by QwtPlotPrintFilter::apply(), QwtPlotCanvas::drawContents(), QwtPlotPanner::moveCanvas(), replot(), QwtPlotZoomer::rescale(), QwtPlotMagnifier::rescale(), and QwtPlotPrintFilter::reset().

void QwtPlot::print ( QPaintDevice &  paintDev,
const QwtPlotPrintFilter pfilter = QwtPlotPrintFilter() 
) const

Print the plot to a QPaintDevice (QPrinter) This function prints the contents of a QwtPlot instance to QPaintDevice object. The size is derived from its device metrics.

Parameters:
paintDev device to paint on, often a printer
pfilter print filter
See also:
QwtPlot::print

QwtPlotPrintFilter

Definition at line 44 of file qwt_plot_print.cpp.

void QwtPlot::print ( QPainter *  painter,
const QRect &  plotRect,
const QwtPlotPrintFilter pfilter = QwtPlotPrintFilter() 
) const [virtual]

Paint the plot into a given rectangle. Paint the contents of a QwtPlot instance into a given rectangle.

Parameters:
painter Painter
plotRect Bounding rectangle
pfilter Print filter
See also:
QwtPlotPrintFilter

Definition at line 74 of file qwt_plot_print.cpp.

References QwtPlotPrintFilter::apply(), axisCnt, axisEnabled(), axisScaleDiv(), axisScaleEngine(), axisWidget(), QwtPlotLayout::canvasMargin(), QwtPlotLayout::canvasRect(), QwtScaleWidget::endBorderDist(), QwtScaleDiv::hBound(), QwtPlotLayout::IgnoreFrames, QwtPlotLayout::IgnoreLegend, QwtPlotLayout::IgnoreMargin, QwtPlotLayout::IgnoreScrollbars, QwtLegend::isEmpty(), QwtScaleDiv::lBound(), legend(), margin(), QwtScaleWidget::margin(), QwtPainter::metricsMap(), QwtPlotPrintFilter::options(), plotLayout(), printCanvas(), QwtPlotPrintFilter::PrintCanvasBackground, printLegend(), QwtPlotPrintFilter::PrintLegend, QwtPlotPrintFilter::PrintMargin, printScale(), printTitle(), QwtPlotPrintFilter::PrintTitle, QwtPlotPrintFilter::reset(), QwtPainter::resetMetricsMap(), QwtPlotLayout::scaleRect(), QwtPainter::setMetricsMap(), QwtScaleMap::setPaintXInterval(), QwtScaleMap::setScaleInterval(), QwtScaleWidget::startBorderDist(), titleLabel(), xBottom, xTop, yLeft, and yRight.

QwtPlotLayout * QwtPlot::plotLayout (  ) 

Returns:
the plot's layout

Definition at line 238 of file qwt_plot.cpp.

Referenced by canvasMap(), and print().

const QwtPlotLayout * QwtPlot::plotLayout (  )  const

Returns:
the plot's layout

Definition at line 246 of file qwt_plot.cpp.

void QwtPlot::setMargin ( int  margin  ) 

Change the margin of the plot. The margin is the space around all components.

Parameters:
margin new margin
See also:
QwtPlotLayout::setMargin(), QwtPlot::margin(), QwtPlot::plotLayout()

Definition at line 679 of file qwt_plot.cpp.

References updateLayout().

int QwtPlot::margin (  )  const

Returns:
margin
See also:
QwtPlot::setMargin(), QwtPlotLayout::margin(), QwtPlot::plotLayout()

Definition at line 695 of file qwt_plot.cpp.

Referenced by canvasMap(), and print().

void QwtPlot::setTitle ( const QString &  t  ) 

Change the plot's title.

Parameters:
t new title

Definition at line 204 of file qwt_plot.cpp.

References updateLayout().

Referenced by applyProperties().

void QwtPlot::setTitle ( const QwtText t  ) 

Change the plot's title.

Parameters:
t new title

Definition at line 217 of file qwt_plot.cpp.

References updateLayout().

QwtText QwtPlot::title (  )  const

Returns:
the plot's title

Definition at line 230 of file qwt_plot.cpp.

Referenced by grabProperties(), QwtPlot(), and setAxisTitle().

QwtTextLabel * QwtPlot::titleLabel (  ) 

Returns:
the plot's titel label.

Definition at line 254 of file qwt_plot.cpp.

Referenced by QwtPlotPrintFilter::apply(), print(), printTitle(), and QwtPlotPrintFilter::reset().

const QwtTextLabel * QwtPlot::titleLabel (  )  const

Returns:
the plot's titel label.

Definition at line 262 of file qwt_plot.cpp.

QwtPlotCanvas * QwtPlot::canvas (  ) 

Returns:
the plot's canvas

Definition at line 289 of file qwt_plot.cpp.

Referenced by canvasBackground(), canvasLineWidth(), QwtPlotCurve::draw(), QwtPlotLayout::minimumSizeHint(), printCanvas(), replot(), setCanvasBackground(), and setCanvasLineWidth().

const QwtPlotCanvas * QwtPlot::canvas (  )  const

Returns:
the plot's canvas

Definition at line 297 of file qwt_plot.cpp.

void QwtPlot::setCanvasBackground ( const QColor &  c  ) 

Change the background of the plotting area.

Sets c to QColorGroup::Background of all colorgroups of the palette of the canvas. Using canvas()->setPalette() is a more powerful way to set these colors.

Parameters:
c new background color

Definition at line 708 of file qwt_plot.cpp.

References canvas().

Referenced by QwtPlotPrintFilter::apply(), and QwtPlotPrintFilter::reset().

const QColor & QwtPlot::canvasBackground (  )  const

Nothing else than: canvas()->palette().color( QPalette::Normal, QColorGroup::Background);

Returns:
the background color of the plotting area.

Definition at line 730 of file qwt_plot.cpp.

References canvas().

Referenced by QwtPlotPrintFilter::apply().

void QwtPlot::setCanvasLineWidth ( int  w  ) 

Change the border width of the plotting area Nothing else than canvas()->setLineWidth(w), left for compatibility only.

Parameters:
w new border width

Definition at line 747 of file qwt_plot.cpp.

References canvas(), and updateLayout().

int QwtPlot::canvasLineWidth (  )  const

Nothing else than: canvas()->lineWidth(), left for compatibility only.

Returns:
the border width of the plotting area

Definition at line 758 of file qwt_plot.cpp.

References canvas().

QwtScaleMap QwtPlot::canvasMap ( int  axisId  )  const [virtual]

Parameters:
axisId Axis
Returns:
Map for the axis on the canvas. With this map pixel coordinates can translated to plot coordinates and vice versa.
See also:
QwtScaleMap, QwtPlot::transform, QwtPlot::invTransform

Definition at line 626 of file qwt_plot.cpp.

References axisEnabled(), axisScaleDiv(), axisScaleEngine(), axisWidget(), QwtPlotLayout::canvasMargin(), QwtScaleWidget::endBorderDist(), QwtScaleDiv::hBound(), QwtScaleDiv::lBound(), margin(), plotLayout(), QwtScaleMap::setPaintInterval(), QwtScaleMap::setScaleInterval(), QwtScaleMap::setTransformation(), QwtScaleWidget::startBorderDist(), yLeft, and yRight.

Referenced by QwtPlotCurve::closestPoint(), QwtPlotCurve::draw(), drawCanvas(), QwtPlotPicker::invTransform(), invTransform(), QwtPlotPanner::moveCanvas(), QwtPlotPicker::transform(), and transform().

double QwtPlot::invTransform ( int  axisId,
int  pos 
) const

Transform the x or y coordinate of a position in the drawing region into a value.

Parameters:
axisId axis index
pos position
Warning:
The position can be an x or a y coordinate, depending on the specified axis.

Definition at line 319 of file qwt_plot_axis.cpp.

References axisValid(), and canvasMap().

int QwtPlot::transform ( int  axisId,
double  value 
) const

Transform a value into a coordinate in the plotting region.

Parameters:
axisId axis index
value value
Returns:
X or y coordinate in the plotting region corresponding to the value.

Definition at line 335 of file qwt_plot_axis.cpp.

References axisValid(), and canvasMap().

void QwtPlot::setAxisAutoScale ( int  axisId  ) 

Enable autoscaling for a specified axis.

This member function is used to switch back to autoscaling mode after a fixed scale has been set. Autoscaling is enabled by default.

Parameters:
axisId axis index
See also:
QwtPlot::setAxisScale(), QwtPlot::setAxisScaleDiv()

Definition at line 366 of file qwt_plot_axis.cpp.

References autoRefresh(), and axisValid().

bool QwtPlot::axisAutoScale ( int  axisId  )  const

Returns:
true if autoscaling is enabled
Parameters:
axisId axis index

Definition at line 154 of file qwt_plot_axis.cpp.

References axisValid().

Referenced by updateAxes().

void QwtPlot::enableAxis ( int  axisId,
bool  tf = true 
)

Enable or disable a specified axis.

When an axis is disabled, this only means that it is not visible on the screen. Curves, markers and can be attached to disabled axes, and transformation of screen coordinates into values works as normal.

Only xBottom and yLeft are enabled by default.

Parameters:
axisId axis index
tf true (enabled) or false (disabled)

Definition at line 302 of file qwt_plot_axis.cpp.

References axisValid(), and updateLayout().

bool QwtPlot::axisEnabled ( int  axisId  )  const

Returns:
true if a specified axis is enabled
Parameters:
axisId axis index

Definition at line 167 of file qwt_plot_axis.cpp.

References axisValid().

Referenced by canvasMap(), QwtPlotLayout::minimumSizeHint(), print(), printScale(), QwtPlotPicker::QwtPlotPicker(), sizeHint(), and updateLayout().

void QwtPlot::setAxisFont ( int  axisId,
const QFont &  f 
)

Change the font of an axis.

Parameters:
axisId axis index
f font
Warning:
This function changes the font of the tick labels, not of the axis title.

Definition at line 351 of file qwt_plot_axis.cpp.

References axisValid(), and axisWidget().

QFont QwtPlot::axisFont ( int  axisId  )  const

Returns:
the font of the scale labels for a specified axis
Parameters:
axisId axis index

Definition at line 179 of file qwt_plot_axis.cpp.

References axisValid(), and axisWidget().

void QwtPlot::setAxisScale ( int  axisId,
double  min,
double  max,
double  stepSize = 0 
)

Disable autoscaling and specify a fixed scale for a selected axis.

Parameters:
axisId axis index
min 
max minimum and maximum of the scale
stepSize Major step size. If step == 0, the step size is calculated automatically using the maxMajor setting.
See also:
QwtPlot::setAxisMaxMajor(), QwtPlot::setAxisAutoScale()

Definition at line 384 of file qwt_plot_axis.cpp.

References autoRefresh(), and axisValid().

Referenced by QwtPlotPanner::moveCanvas(), QwtPlotZoomer::rescale(), and QwtPlotMagnifier::rescale().

void QwtPlot::setAxisScaleDiv ( int  axisId,
const QwtScaleDiv scaleDiv 
)

Disable autoscaling and specify a fixed scale for a selected axis.

Parameters:
axisId axis index
scaleDiv Scale division
See also:
QwtPlot::setAxisScale(), QwtPlot::setAxisAutoScale()

Definition at line 407 of file qwt_plot_axis.cpp.

References autoRefresh(), and axisValid().

void QwtPlot::setAxisScaleDraw ( int  axisId,
QwtScaleDraw scaleDraw 
)

Set a scale draw.

Parameters:
axisId axis index
scaleDraw object responsible for drawing scales.
By passing scaleDraw it is possible to extend QwtScaleDraw functionality and let it take place in QwtPlot. Please note that scaleDraw has to be created with new and will be deleted by the corresponding QwtScale member ( like a child object ).

See also:
QwtScaleDraw, QwtScale
Warning:
The attributes of scaleDraw will be overwritten by those of the previous QwtScaleDraw.

Definition at line 435 of file qwt_plot_axis.cpp.

References autoRefresh(), axisValid(), axisWidget(), and QwtScaleWidget::setScaleDraw().

const QwtScaleDiv * QwtPlot::axisScaleDiv ( int  axisId  )  const

Return the scale division of a specified axis.

axisScaleDiv(axisId)->lBound(), axisScaleDiv(axisId)->hBound() are the current limits of the axis scale.

Parameters:
axisId axis index
Returns:
Scale division
See also:
QwtScaleDiv, setAxisScaleDiv

Definition at line 223 of file qwt_plot_axis.cpp.

References axisValid().

Referenced by canvasMap(), QwtPlotPanner::moveCanvas(), print(), QwtPlotZoomer::rescale(), QwtPlotMagnifier::rescale(), QwtPlotPicker::scaleRect(), and updateAxes().

QwtScaleDiv * QwtPlot::axisScaleDiv ( int  axisId  ) 

Return the scale division of a specified axis.

axisScaleDiv(axisId)->lBound(), axisScaleDiv(axisId)->hBound() are the current limits of the axis scale.

Parameters:
axisId axis index
Returns:
Scale division
See also:
QwtScaleDiv, setAxisScaleDiv

Definition at line 242 of file qwt_plot_axis.cpp.

References axisValid().

const QwtScaleDraw * QwtPlot::axisScaleDraw ( int  axisId  )  const

Returns:
the scale draw of a specified axis
Parameters:
axisId axis index
Returns:
specified scaleDraw for axis, or NULL if axis is invalid.
See also:
QwtScaleDraw

Definition at line 256 of file qwt_plot_axis.cpp.

References axisValid(), axisWidget(), and QwtScaleWidget::scaleDraw().

QwtScaleDraw * QwtPlot::axisScaleDraw ( int  axisId  ) 

Returns:
the scale draw of a specified axis
Parameters:
axisId axis index
Returns:
specified scaleDraw for axis, or NULL if axis is invalid.
See also:
QwtScaleDraw

Definition at line 270 of file qwt_plot_axis.cpp.

References axisValid(), axisWidget(), and QwtScaleWidget::scaleDraw().

const QwtScaleWidget * QwtPlot::axisWidget ( int  axisId  )  const

Returns:
specified axis, or NULL if axisId is invalid.
Parameters:
axisId axis index

Definition at line 100 of file qwt_plot_axis.cpp.

References axisValid().

Referenced by QwtPlotPrintFilter::apply(), axisFont(), axisScaleDraw(), axisTitle(), canvasMap(), QwtPlotLayout::minimumSizeHint(), print(), printScale(), QwtPlotPrintFilter::reset(), setAxisFont(), setAxisLabelAlignment(), setAxisLabelRotation(), setAxisScaleDraw(), setAxisTitle(), sizeHint(), updateAxes(), and updateLayout().

QwtScaleWidget * QwtPlot::axisWidget ( int  axisId  ) 

Returns:
specified axis, or NULL if axisId is invalid.
Parameters:
axisId axis index

Definition at line 112 of file qwt_plot_axis.cpp.

References axisValid().

void QwtPlot::setAxisLabelAlignment ( int  axisId,
Qt::Alignment  alignment 
)

Change the alignment of the tick labels

Parameters:
axisId axis index
alignment Or'd Qt::AlignmentFlags <see qnamespace.h>
See also:
QwtScaleDraw::setLabelAlignment()

Definition at line 453 of file qwt_plot_axis.cpp.

References axisValid(), axisWidget(), and QwtScaleWidget::setLabelAlignment().

void QwtPlot::setAxisLabelRotation ( int  axisId,
double  rotation 
)

Rotate all tick labels

Parameters:
axisId axis index
rotation Angle in degrees. When changing the label rotation, the label alignment might be adjusted too.
See also:
QwtScaleDraw::setLabelRotation(), QwtPlot::setAxisLabelAlignment

Definition at line 467 of file qwt_plot_axis.cpp.

References axisValid(), axisWidget(), and QwtScaleWidget::setLabelRotation().

void QwtPlot::setAxisTitle ( int  axisId,
const QString &  title 
)

Change the title of a specified axis.

Parameters:
axisId axis index
title axis title

Definition at line 529 of file qwt_plot_axis.cpp.

References axisValid(), axisWidget(), and QwtScaleWidget::setTitle().

void QwtPlot::setAxisTitle ( int  axisId,
const QwtText title 
)

Change the title of a specified axis.

Parameters:
axisId axis index
title axis title

Definition at line 540 of file qwt_plot_axis.cpp.

References axisValid(), axisWidget(), QwtScaleWidget::setTitle(), and title().

QwtText QwtPlot::axisTitle ( int  axisId  )  const

Returns:
the title of a specified axis
Parameters:
axisId axis index

Definition at line 282 of file qwt_plot_axis.cpp.

References axisValid(), axisWidget(), and QwtScaleWidget::title().

void QwtPlot::setAxisMaxMinor ( int  axisId,
int  maxMinor 
)

Set the maximum number of minor scale intervals for a specified axis.

Parameters:
axisId axis index
maxMinor maximum number of minor steps
See also:
QwtAutoScale::setMaxMinor

Definition at line 479 of file qwt_plot_axis.cpp.

References autoRefresh(), and axisValid().

int QwtPlot::axisMaxMajor ( int  axisId  )  const

Returns:
the maximum number of major ticks for a specified axis
Parameters:
axisId axis index

Definition at line 192 of file qwt_plot_axis.cpp.

References axisValid().

void QwtPlot::setAxisMaxMajor ( int  axisId,
int  maxMajor 
)

Set the maximum number of major scale intervals for a specified axis.

Parameters:
axisId axis index
maxMajor maximum number of major steps
See also:
QwtAutoScale::setMaxMajor

Definition at line 505 of file qwt_plot_axis.cpp.

References autoRefresh(), and axisValid().

int QwtPlot::axisMaxMinor ( int  axisId  )  const

Returns:
the maximum number of minor ticks for a specified axis
Parameters:
axisId axis index

Definition at line 204 of file qwt_plot_axis.cpp.

References axisValid().

void QwtPlot::insertLegend ( QwtLegend legend,
QwtPlot::LegendPosition  pos = QwtPlot::RightLegend,
double  ratio = -1.0 
)

Insert a legend.

If the position legend is QwtPlot::LeftLegend or QwtPlot::RightLegend the legend will be organized in one column from top to down. Otherwise the legend items will be placed be placed in a table with a best fit number of columns from left to right.

If pos != QwtPlot::ExternalLegend the plot widget will become parent of the legend. It will be deleted when the plot is deleted, or another legend is set with insertLegend().

Parameters:
legend Legend
pos The legend's position. For top/left position the number of colums will be limited to 1, otherwise it will be set to unlimited.
ratio Ratio between legend and the bounding rect of title, canvas and axes. The legend will be shrinked if it would need more space than the given ratio. The ratio is limited to ]0.0 .. 1.0]. In case of <= 0.0 it will be reset to the default ratio. The default vertical/horizontal ratio is 0.33/0.5.
See also:
QwtPlotLayout::legendPosition(), QwtPlotLayout::setLegendPosition()

Definition at line 830 of file qwt_plot.cpp.

References BottomLegend, ExternalLegend, QwtPlotDict::itemList(), LeftLegend, legend(), RightLegend, TopLegend, updateLayout(), and updateTabOrder().

QwtLegend * QwtPlot::legend (  ) 

Returns:
the plot's legend
See also:
printLegendItem()

Definition at line 271 of file qwt_plot.cpp.

Referenced by QwtPlotLayout::activate(), QwtPlotPrintFilter::apply(), insertLegend(), print(), printLegend(), and QwtPlotPrintFilter::reset().

const QwtLegend * QwtPlot::legend (  )  const

Returns:
the plot's legend
See also:
printLegendItem()

Definition at line 280 of file qwt_plot.cpp.

QSize QwtPlot::sizeHint (  )  const [virtual]

Return sizeHint

See also:
QwtPlot::minimumSizeHint()

Definition at line 316 of file qwt_plot.cpp.

References axisCnt, axisEnabled(), axisWidget(), QwtScaleDiv::MajorTick, minimumSizeHint(), QwtScaleWidget::minimumSizeHint(), QwtAbstractScaleDraw::scaleDiv(), QwtScaleWidget::scaleDraw(), QwtScaleDiv::ticks(), yLeft, and yRight.

QSize QwtPlot::minimumSizeHint (  )  const [virtual]

Return a minimum size hint.

Definition at line 351 of file qwt_plot.cpp.

Referenced by sizeHint().

void QwtPlot::updateLayout (  )  [virtual]

Adjust plot content to its current size.

See also:
QwtPlot::resizeEvent

Definition at line 426 of file qwt_plot.cpp.

References axisCnt, axisEnabled(), axisWidget(), ExternalLegend, xBottom, xTop, yLeft, and yRight.

Referenced by enableAxis(), event(), insertLegend(), resizeEvent(), setCanvasLineWidth(), setMargin(), and setTitle().

bool QwtPlot::event ( QEvent *   )  [virtual]

Adds handling of layout requests.

Definition at line 141 of file qwt_plot.cpp.

References polish(), and updateLayout().

void QwtPlot::legendClicked ( QwtPlotItem plotItem  )  [signal]

A signal which is emitted when the user has clicked on a legend item, which is in QwtLegend::ClickableItem mode.

Parameters:
plotItem Corresponding plot item of the selected legend item
Note:
clicks are disabled as default
See also:
QwtLegend::setItemMode, QwtLegend::itemMode

Referenced by legendItemClicked().

void QwtPlot::legendChecked ( QwtPlotItem plotItem,
bool  on 
) [signal]

A signal which is emitted when the user has clicked on a legend item, which is in QwtLegend::CheckableItem mode

Parameters:
plotItem Corresponding plot item of the selected legend item
on True when the legen item is checked
Note:
clicks are disabled as default
See also:
QwtLegend::setItemMode, QwtLegend::itemMode

Referenced by legendItemChecked().

void QwtPlot::clear (  )  [slot]

Remove all curves and markers.

Definition at line 798 of file qwt_plot.cpp.

References QwtPlotDict::detachItems(), QwtPlotItem::Rtti_PlotCurve, and QwtPlotItem::Rtti_PlotMarker.

void QwtPlot::replot (  )  [virtual, slot]

Redraw the plot.

If the autoReplot option is not set (which is the default) or if any curves are attached to raw data, the plot has to be refreshed explicitly in order to make changes visible.

See also:
setAutoReplot()
Warning:
Calls canvas()->repaint, take care of infinite recursions

Definition at line 376 of file qwt_plot.cpp.

References autoReplot(), canvas(), QwtPlotCanvas::invalidatePaintCache(), QwtPlotCanvas::PaintCached, QwtPlotCanvas::PaintPacked, setAutoReplot(), QwtPlotCanvas::testPaintAttribute(), and updateAxes().

Referenced by applyProperties(), autoRefresh(), QwtPlotPanner::moveCanvas(), polish(), QwtPlotZoomer::rescale(), and QwtPlotMagnifier::rescale().

void QwtPlot::autoRefresh (  )  [slot]

Replots the plot if QwtPlot::autoReplot() is true.

Definition at line 167 of file qwt_plot.cpp.

References replot().

Referenced by setAxisAutoScale(), setAxisMaxMajor(), setAxisMaxMinor(), setAxisScale(), setAxisScaleDiv(), setAxisScaleDraw(), and setAxisScaleEngine().

void QwtPlot::legendItemClicked (  )  [protected, virtual, slot]

Called internally when the legend has been clicked on. Emits a legendClicked() signal.

Definition at line 777 of file qwt_plot.cpp.

References legendClicked().

bool QwtPlot::axisValid ( int  axisId  )  [static, protected]

Returns:
true if the specified axis exists, otherwise false
Parameters:
axisId axis index

Definition at line 767 of file qwt_plot.cpp.

References axisCnt, and yLeft.

Referenced by axisAutoScale(), axisEnabled(), axisFont(), axisMaxMajor(), axisMaxMinor(), axisScaleDiv(), axisScaleDraw(), axisScaleEngine(), axisTitle(), axisWidget(), enableAxis(), invTransform(), setAxisAutoScale(), setAxisFont(), setAxisLabelAlignment(), setAxisLabelRotation(), setAxisMaxMajor(), setAxisMaxMinor(), setAxisScale(), setAxisScaleDiv(), setAxisScaleDraw(), setAxisScaleEngine(), setAxisTitle(), and transform().

void QwtPlot::drawCanvas ( QPainter *  painter  )  [protected, virtual]

Redraw the canvas.

Parameters:
painter Painter used for drawing
Warning:
drawCanvas calls drawCanvasItems what is also used for printing. Applications that like to add individual plot items better overload QwtPlot::drawCanvasItems
See also:
QwtPlot::drawItems

Definition at line 568 of file qwt_plot.cpp.

References axisCnt, canvasMap(), and drawItems().

void QwtPlot::drawItems ( QPainter *  painter,
const QRect &  rect,
const QwtScaleMap  map[axisCnt],
const QwtPlotPrintFilter pfilter 
) const [protected, virtual]

Redraw the canvas items.

Parameters:
painter Painter used for drawing
rect Bounding rectangle where to paint
map QwtPlot::axisCnt maps, mapping between plot and paint device coordinates
pfilter Plot print filter

Definition at line 586 of file qwt_plot.cpp.

References QwtPlotDict::itemList(), QwtPlotPrintFilter::options(), QwtPlotPrintFilter::PrintGrid, QwtPlotItem::RenderAntialiased, and QwtPlotItem::Rtti_PlotGrid.

Referenced by drawCanvas(), and printCanvas().

void QwtPlot::updateTabOrder (  )  [protected, virtual]

Update the focus tab order

The order is changed so that the canvas will be in front of the first legend item, or behind the last legend item - depending on the position of the legend.

Definition at line 490 of file qwt_plot.cpp.

References BottomLegend, ExternalLegend, and RightLegend.

Referenced by insertLegend().

void QwtPlot::updateAxes (  )  [protected]

Rebuild the scales and maps.

Definition at line 547 of file qwt_plot_axis.cpp.

References QwtPlotItem::AutoScale, axisAutoScale(), axisScaleDiv(), axisWidget(), QwtScaleWidget::getBorderDistHint(), QwtDoubleInterval::isValid(), QwtPlotDict::itemList(), QwtDoubleInterval::maxValue(), QwtDoubleInterval::minValue(), QwtScaleWidget::setBorderDist(), and QwtScaleWidget::setScaleDiv().

Referenced by replot().

void QwtPlot::resizeEvent ( QResizeEvent *  e  )  [protected, virtual]

Resize and update internal layout.

Definition at line 360 of file qwt_plot.cpp.

References updateLayout().

void QwtPlot::printLegendItem ( QPainter *  painter,
const QWidget *  w,
const QRect &  rect 
) const [protected, virtual]

Print the legend item into a given rectangle.

Parameters:
painter Painter
w Widget representing a legend item
rect Bounding rectangle

Definition at line 322 of file qwt_plot_print.cpp.

Referenced by printLegend().

void QwtPlot::printTitle ( QPainter *  painter,
const QRect &  rect 
) const [protected, virtual]

Print the title into a given rectangle.

Parameters:
painter Painter
rect Bounding rectangle

Definition at line 243 of file qwt_plot_print.cpp.

References QwtText::draw(), QwtTextLabel::text(), and titleLabel().

Referenced by print().

void QwtPlot::printScale ( QPainter *  painter,
int  axisId,
int  startDist,
int  endDist,
int  baseDist,
const QRect &  rect 
) const [protected, virtual]

Paint a scale into a given rectangle. Paint the scale into a given rectangle.

Parameters:
painter Painter
axisId Axis
startDist Start border distance
endDist End border distance
baseDist Base distance
rect Bounding rectangle

Definition at line 346 of file qwt_plot_print.cpp.

References axisEnabled(), axisWidget(), QwtScaleDraw::BottomScale, QwtScaleWidget::colorBarRect(), QwtScaleWidget::colorBarWidth(), QwtAbstractScaleDraw::draw(), QwtScaleWidget::drawColorBar(), QwtScaleWidget::drawTitle(), QwtScaleWidget::isColorBarEnabled(), QwtMetricsMap::layoutToScreen(), QwtScaleDraw::LeftScale, QwtScaleDraw::length(), QwtPainter::metricsMap(), QwtScaleDraw::move(), QwtScaleDraw::orientation(), QwtScaleWidget::penWidth(), QwtScaleDraw::pos(), QwtScaleDraw::RightScale, QwtScaleWidget::scaleDraw(), QwtScaleDraw::setLength(), QwtScaleWidget::spacing(), QwtScaleDraw::TopScale, xBottom, xTop, yLeft, and yRight.

Referenced by print().

void QwtPlot::printCanvas ( QPainter *  painter,
const QRect &  canvasRect,
const QwtScaleMap  map[axisCnt],
const QwtPlotPrintFilter pfilter 
) const [protected, virtual]

Print the canvas into a given rectangle.

Parameters:
painter Painter
map Maps mapping between plot and paint device coordinates
canvasRect Bounding rectangle
pfilter Print filter
See also:
QwtPlotPrintFilter

Definition at line 450 of file qwt_plot_print.cpp.

References canvas(), drawItems(), QwtPainter::drawRect(), QwtPainter::metricsMap(), QwtPlotPrintFilter::options(), QwtPlotPrintFilter::PrintCanvasBackground, QwtMetricsMap::screenToLayoutX(), QwtMetricsMap::screenToLayoutY(), and QwtPainter::setClipRect().

Referenced by print().

void QwtPlot::printLegend ( QPainter *  painter,
const QRect &  rect 
) const [protected, virtual]

Print the legend into a given rectangle.

Parameters:
painter Painter
rect Bounding rectangle

Definition at line 267 of file qwt_plot_print.cpp.

References QwtDynGridLayout::columnsForWidth(), QwtLegend::contentsWidget(), QwtDynGridLayout::count(), QwtDynGridLayout::itemAt(), QwtDynGridLayout::layoutItems(), legend(), printLegendItem(), and QwtPainter::setClipRect().

Referenced by print().


Generated on Sun Jul 22 11:26:56 2007 for Qwt User's Guide by  doxygen 1.5.2