Qwt User's Guide: QwtPlotSpectrogram Class Reference

- Main Page
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# QwtPlotSpectrogram Class Reference

Inheritance diagram for QwtPlotSpectrogram:

[legend]
Collaboration diagram for QwtPlotSpectrogram:

[legend]
List of all members.

## Detailed Description

A plot item, which displays a spectrogram.

A spectrogram displays threedimenional data, where the 3rd dimension ( the intensity ) is displayed using colors. The colors are calculated from the values using a color map.

In ContourMode contour lines are painted for the contour levels.

See also:
  QwtRasterData, QwtColorMap

Definition at line 35 of file qwt_plot_spectrogram.h.

## Public Types
enum | DisplayMode { ImageMode = 1, ContourMode = 2 }
## Public Member Functions
| QwtPlotSpectrogram (const QString &title=QString::null)
virtual | ~QwtPlotSpectrogram ()
void | setDisplayMode (DisplayMode, bool on=true)
bool | testDisplayMode (DisplayMode) const
void | setData (const QwtRasterData &data)
const QwtRasterData & | data () const
void | setColorMap (const QwtColorMap &)
const QwtColorMap & | colorMap () const
virtual QwtDoubleRect | boundingRect () const
virtual QSize | rasterHint (const QwtDoubleRect &) const
void | setDefaultContourPen (const QPen &)
QPen | defaultContourPen () const
virtual QPen | contourPen (double level) const
void | setConrecAttribute (QwtRasterData::ConrecAttribute, bool on)
bool | testConrecAttribute (QwtRasterData::ConrecAttribute) const
void | setContourLevels (const QwtValueList &)
QwtValueList | contourLevels () const
virtual int | rtti () const
virtual void | draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &rect) const
## Protected Member Functions
virtual QImage | renderImage (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtDoubleRect &rect) const
virtual QSize | contourRasterSize (const QwtDoubleRect &, const QRect &) const
virtual QwtRasterData::ContourLines | renderContourLines (const QwtDoubleRect &rect, const QSize &raster) const
virtual void | drawContourLines (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtRasterData::ContourLines &lines) const

## Member Enumeration Documentation

enum QwtPlotSpectrogram::DisplayMode

| The display mode controls how the raster data will be represented. ImageMode The values are mapped to colors using a color map. ContourMode The data is displayed using contour lines When both modes are enabled the contour lines are painted on top of the spectrogram. The default setting enables ImageMode. See also: setDisplayMode(), testDisplayMode() Definition at line 51 of file qwt_plot_spectrogram.h.

## Constructor & Destructor Documentation

QwtPlotSpectrogram::QwtPlotSpectrogram | ( | const QString & | title = `QString::null` | ) | `[explicit]`

  | Sets the following item attributes: QwtPlotItem::AutoScale: true QwtPlotItem::Legend: false The z value is initialized by 8.0. Parameters:
  | title | Title
See also: QwtPlotItem::setItemAttribute(), QwtPlotItem::setZ() Definition at line 134 of file qwt_plot_spectrogram.cpp. References QwtPlotItem::setItemAttribute(), and QwtPlotItem::setZ().

QwtPlotSpectrogram::~QwtPlotSpectrogram | ( |  | ) | `[virtual]`

| Destructor. Definition at line 146 of file qwt_plot_spectrogram.cpp.

## Member Function Documentation

QwtDoubleRect QwtPlotSpectrogram::boundingRect | ( |  | ) | const`[virtual]`

| Returns: Bounding rect of the data See also: QwtRasterData::boundingRect Reimplemented from QwtPlotItem. Definition at line 364 of file qwt_plot_spectrogram.cpp. Referenced by draw().

const QwtColorMap & QwtPlotSpectrogram::colorMap | ( |  | ) | const

| Returns: Color Map used for mapping the intensity values to colors See also: setColorMap() Definition at line 215 of file qwt_plot_spectrogram.cpp. Referenced by setColorMap().

QwtValueList QwtPlotSpectrogram::contourLevels | ( |  | ) | const

| Return the levels of the contour lines. The levels are sorted in increasing order. See also: contourLevels, renderContourLines, QwtRasterData::contourLines Definition at line 331 of file qwt_plot_spectrogram.cpp.

QPen QwtPlotSpectrogram::contourPen | ( | double | level | ) | const`[virtual]`

  | Calculate the pen for a contour line. The color of the pen is the color for level calculated by the color map Parameters:
  | level | Contour level
Returns: Pen for the contour line Note: contourPen is only used if defaultContourPen().style() == Qt::NoPen See also: setDefaultContourPen, setColorMap, setContourLevels Definition at line 259 of file qwt_plot_spectrogram.cpp. Referenced by drawContourLines().

QSize QwtPlotSpectrogram::contourRasterSize | ( | const QwtDoubleRect & | area,
|  | const QRect & | rect
| ) | const`[protected, virtual]`

  | Return the raster to be used by the CONREC contour algorithm. A larger size will improve the precisision of the CONREC algorithm, but will slow down the time that is needed to calculate the lines. The default implementation returns rect.size() / 2 bounded to data().rasterHint(). Parameters:
  | area | Rect, where to calculate the contour lines
  | rect | Rect in pixel coordinates, where to paint the contour lines
Returns: Raster to be used by the CONREC contour algorithm. Note: The size will be bounded to rect.size(). See also: drawContourLines, QwtRasterData::contourLines Definition at line 529 of file qwt_plot_spectrogram.cpp. References rasterHint(). Referenced by draw().

const QwtRasterData & QwtPlotSpectrogram::data | ( |  | ) | const

| Returns: Spectrogram data See also: setData() Definition at line 355 of file qwt_plot_spectrogram.cpp. Referenced by setData().

QPen QwtPlotSpectrogram::defaultContourPen | ( |  | ) | const

| Returns: Default contour pen See also: setDefaultContourPen Definition at line 243 of file qwt_plot_spectrogram.cpp. Referenced by drawContourLines().

void QwtPlotSpectrogram::draw | ( | QPainter * | painter,
|  | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QRect & | canvasRect
| ) | const`[virtual]`

  | Draw the spectrogram. Parameters:
  | painter | Painter
  | xMap | Maps x-values into pixel coordinates.
  | yMap | Maps y-values into pixel coordinates.
  | canvasRect | Contents rect of the canvas in painter coordinates
See also: setDisplayMode, renderImage, QwtPlotRasterItem::draw, drawContourLines Reimplemented from QwtPlotRasterItem. Definition at line 615 of file qwt_plot_spectrogram.cpp. References boundingRect(), contourRasterSize(), QwtPlotRasterItem::draw(), drawContourLines(), QwtPlotItem::invTransform(), renderContourLines(), and QwtPlotItem::transform().

void QwtPlotSpectrogram::drawContourLines | ( | QPainter * | painter,
|  | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QwtRasterData::ContourLines & | contourLines
| ) | const`[protected, virtual]`

  | Paint the contour lines Parameters:
  | painter | Painter
  | xMap | Maps x-values into pixel coordinates.
  | yMap | Maps y-values into pixel coordinates.
  | contourLines | Contour lines
See also: renderContourLines, defaultContourPen, contourPen Definition at line 566 of file qwt_plot_spectrogram.cpp. References contourPen(), defaultContourPen(), QwtPainter::drawLine(), and QwtScaleMap::transform(). Referenced by draw().

QSize QwtPlotSpectrogram::rasterHint | ( | const QwtDoubleRect & | rect | ) | const`[virtual]`

  | Returns the recommended raster for a given rect. F.e the raster hint is used to limit the resolution of the image that is rendered. Parameters:
  | rect | Rect for the raster hint
Returns: data().rasterHint(rect) Reimplemented from QwtPlotRasterItem. Definition at line 378 of file qwt_plot_spectrogram.cpp. Referenced by contourRasterSize().

QwtRasterData::ContourLines QwtPlotSpectrogram::renderContourLines | ( | const QwtDoubleRect & | rect,
|  | const QSize & | raster
| ) | const`[protected, virtual]`

  | Calculate contour lines Parameters:
  | rect | Rectangle, where to calculate the contour lines
  | raster | Raster, used by the CONREC algorithm
See also: contourLevels, setConrecAttribute, QwtRasterData::contourLines Definition at line 549 of file qwt_plot_spectrogram.cpp. Referenced by draw().

QImage QwtPlotSpectrogram::renderImage | ( | const QwtScaleMap & | xMap,
|  | const QwtScaleMap & | yMap,
|  | const QwtDoubleRect & | area
| ) | const`[protected, virtual]`

  | Render an image from the data and color map. The area is translated into a rect of the paint device. For each pixel of this rect the intensity is mapped into a color. Parameters:
  | xMap | X-Scale Map
  | yMap | Y-Scale Map
  | area | Area that should be rendered in scale coordinates.
Returns: A QImage::Format_Indexed8 or QImage::Format_ARGB32 depending on the color map. See also: QwtRasterData::intensity(), QwtColorMap::rgb(), QwtColorMap::colorIndex() Implements QwtPlotRasterItem. Definition at line 400 of file qwt_plot_spectrogram.cpp. References QwtScaleMap::p1(), QwtScaleMap::p2(), QwtScaleMap::s1(), QwtScaleMap::s2(), QwtScaleMap::setPaintInterval(), QwtScaleMap::setScaleInterval(), and QwtPlotItem::transform().

int QwtPlotSpectrogram::rtti | ( |  | ) | const`[virtual]`

| Returns: QwtPlotItem::Rtti_PlotSpectrogram Reimplemented from QwtPlotItem. Definition at line 152 of file qwt_plot_spectrogram.cpp.

void QwtPlotSpectrogram::setColorMap | ( | const QwtColorMap & | colorMap | ) |

  | Change the color map Often it is useful to display the mapping between intensities and colors as an additional plot axis, showing a color bar. Parameters:
  | colorMap | Color Map
See also: colorMap(), QwtScaleWidget::setColorBarEnabled(), QwtScaleWidget::setColorMap() Definition at line 202 of file qwt_plot_spectrogram.cpp. References colorMap(), QwtColorMap::copy(), QwtPlotRasterItem::invalidateCache(), and QwtPlotItem::itemChanged().

void QwtPlotSpectrogram::setConrecAttribute | ( | QwtRasterData::ConrecAttribute | attribute,
|  | bool | on
| ) |

  | Modify an attribute of the CONREC algorithm, used to calculate the contour lines. Parameters:
  | attribute | CONREC attribute
  | on | On/Off
See also: testConrecAttribute, renderContourLines, QwtRasterData::contourLines Definition at line 276 of file qwt_plot_spectrogram.cpp. References QwtPlotItem::itemChanged().

void QwtPlotSpectrogram::setContourLevels | ( | const QwtValueList & | levels | ) |

  | Set the levels of the contour lines Parameters:
  | levels | Values of the contour levels
See also: contourLevels, renderContourLines, QwtRasterData::contourLines Note: contourLevels returns the same levels but sorted. Definition at line 313 of file qwt_plot_spectrogram.cpp. References QwtPlotItem::itemChanged().

void QwtPlotSpectrogram::setData | ( | const QwtRasterData & | data | ) |

  | Set the data to be displayed Parameters:
  | data | Spectrogram Data
See also: data() Definition at line 342 of file qwt_plot_spectrogram.cpp. References QwtRasterData::copy(), data(), QwtPlotRasterItem::invalidateCache(), and QwtPlotItem::itemChanged().

void QwtPlotSpectrogram::setDefaultContourPen | ( | const QPen & | pen | ) |

| Set the default pen for the contour lines. If the spectrogram has a valid default contour pen a contour line is painted using the default contour pen. Otherwise (pen.style() == Qt::NoPen) the pen is calculated for each contour level using contourPen(). See also: defaultContourPen, contourPen Definition at line 230 of file qwt_plot_spectrogram.cpp. References QwtPlotItem::itemChanged().

void QwtPlotSpectrogram::setDisplayMode | ( | DisplayMode | mode,
|  | bool | on = `true`
| ) |

  | The display mode controls how the raster data will be represented. Parameters:
  | mode | Display mode
  | on | On/Off
The default setting enables ImageMode. See also: DisplayMode, displayMode() Definition at line 167 of file qwt_plot_spectrogram.cpp. References QwtPlotItem::itemChanged().

bool QwtPlotSpectrogram::testConrecAttribute | ( | QwtRasterData::ConrecAttribute | attribute | ) | const

  | Test an attribute of the CONREC algorithm, used to calculate the contour lines. Parameters:
  | attribute | CONREC attribute
Returns: true, is enabled See also: setConrecAttribute, renderContourLines, QwtRasterData::contourLines Definition at line 299 of file qwt_plot_spectrogram.cpp.

bool QwtPlotSpectrogram::testDisplayMode | ( | DisplayMode | mode | ) | const

  | The display mode controls how the raster data will be represented. Parameters:
  | mode | Display mode
Returns: true if mode is enabled Definition at line 186 of file qwt_plot_spectrogram.cpp.