DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DA::DAChartWidget类 参考

增强的Qwt图表控件,提供完整的数据绘图、样式设置和交互控制功能 更多...

#include <DAChartWidget.h>

类 DA::DAChartWidget 继承关系图:
DA::DAChartDataInterface DA::DAChartStyleInterface DA::DAChartInteractionInterface

class  PrivateData
 

Public 类型

enum  ChartPropertyChangeFlag {
  NoChange = 0x0 , ChartTitleChanged = 0x1 , BackgroundChanged = 0x2 , BorderColorChanged = 0x4 ,
  AxisLabelChanged = 0x10 , AxisColorChanged = 0x20 , AxisScaleChanged = 0x40 , GridEnabledChanged = 0x100 ,
  GridStyleChanged , LegendEnabledChanged = 0x400 , LegendPositionChanged = 0x800 , LegendBackgroundChanged = 0x1000 ,
  LegendTextColorChanged = 0x2000 , LegendPanelEnabledChanged = 0x8000 , DateTimeScaleSetup = 0x10000 , ZoomStateChanged = 0x100000 ,
  PanStateChanged = 0x200000 , CrosshairStateChanged = 0x400000 , DataPickingStateChanged , MouseWheelZoomStateChanged = 0x1000000
}
 The 图表属性 更多...
 
- Public 类型 继承自 DA::DAChartInteractionInterface
using PannerFactory = std::function< QwtPlotPanner *(QWidget *) >
 
using PickerFactory = std::function< QwtPlotPicker *(QWidget *) >
 
using DataPickerFactory = std::function< QwtPlotSeriesDataPicker *(QWidget *) >
 

Public 槽

void onLegendItemToggled (const QVariant &itemInfo, bool checked)
 

信号

void chartPropertiesChanged (DA::DAChartWidget *chart, DA::DAChartWidget::ChartPropertyChangeFlags flag)
 

Public 成员函数

 DAChartWidget (QWidget *parent=nullptr)
 
virtual QList< int > dataRttis () const override
 获取所有数据相关的rtti,此函数会影响clearAllData函数
 
QwtPlotCurve * addCurve (const QVector< double > &xData, const QVector< double > &yData, const QString &title=QString()) override
 
QwtPlotCurve * addCurve (const QVector< QPointF > &points, const QString &title=QString()) override
 
QList< QwtPlotCurve * > getCurves () const override
 
void removeCurve (QwtPlotCurve *curve) override
 
QwtPlotCurve * addScatter (const QVector< QPointF > &points, const QString &title=QString()) override
 
QwtPlotBarChart * addBarChart (const QVector< double > &values, const QString &title=QString()) override
 
QwtPlotBarChart * addBarChart (const QVector< QPointF > &points, const QString &title=QString()) override
 
QwtPlotIntervalCurve * addIntervalCurve (const QVector< double > &values, const QVector< double > &mins, const QVector< double > &maxs, const QString &title=QString()) override
 
QwtPlotMarker * addVerticalLine (double x, const QString &title=QString()) override
 
QwtPlotMarker * addHorizontalLine (double y, const QString &title=QString()) override
 
QwtPlotMarker * addCrossLine (double x, double y, const QString &title=QString()) override
 
QwtPlotSpectrogram * addSpectrogram (QwtGridRasterData *gridData, const QString &title=QString()) override
 
void removePlotItem (QwtPlotItem *item) override
 
void clearAllData () override
 
QRectF getDataBounds () const override
 
bool hasData () const override
 
void setChartTitle (const QString &title) override
 
QString getChartTitle () const override
 
void setBackgroundBrush (const QBrush &brush) override
 
QBrush getBackgroundBrush () const override
 
void setBorderColor (const QColor &color) override
 
QColor getBorderColor () const override
 
void setAxisLabel (int axisId, const QString &label) override
 
QString getAxisLabel (int axisId) const override
 
void setAxisColor (int axisId, const QColor &color) override
 
QColor getAxisColor (int axisId) const override
 
void enableGrid (bool enable=true) override
 
void enableGridX (bool enable=true)
 
void enableGridY (bool enable=true)
 
void enableGridXMin (bool enable=true)
 
void enableGridYMin (bool enable=true)
 
bool isGridEnabled () const override
 
bool isGridXEnabled () const
 
bool isGridYEnabled () const
 
bool isGridXMinEnabled () const
 
bool isGridYMinEnabled () const
 
void setGridStyle (const QColor &color, qreal width=1.0, Qt::PenStyle style=Qt::DotLine, bool isMajor=true) override
 
void setGridMajorStyle (const QColor &color, qreal width=1.0, Qt::PenStyle style=Qt::DotLine) override
 
void setGridMinorStyle (const QColor &color, qreal width=0.5, Qt::PenStyle style=Qt::DotLine) override
 
void enableLegend (bool enable=true) override
 
bool isLegendEnabled () const override
 
void setLegendPosition (Qt::Alignment alignment) override
 
Qt::Alignment getLegendPosition () const override
 
void setLegendBackground (const QBrush &brush) override
 
QBrush getLegendBackground () const override
 
void setLegendTextColor (const QColor &color) override
 
QColor getLegendTextColor () const override
 
void setupDateTimeAxis (int axisId, const QString &format="yyyy-MM-dd hh:mm:ss") override
 
bool isDateTimeAxis (int axisId) const override
 
void enableZoom (bool enable=true) override
 
bool isZoomEnabled () const override
 
void zoomToOriginal () override
 
void zoomIn () override
 
void zoomOut () override
 
QwtPlotCanvasZoomer * getZoomer () const override
 
void enablePan (bool enable=true) override
 
bool isPanEnabled () const override
 
QwtPlotPanner * getPanner () const override
 
void enableCrosshair (bool enable=true) override
 
bool isCrosshairEnabled () const override
 
QwtPlotPicker * getCrosshair () const override
 
bool isDataPickingEnabled () const
 
void enableYValuePicking (bool enable=true) override
 
bool isYValuePickingEnabled () const override
 
void enableXYValuePicking (bool enable=true) override
 
bool isXYValuePickingEnabled () const override
 
QwtPlotSeriesDataPicker * getDataPicker () const override
 
void enableMouseWheelZoom (bool enable=true) override
 
bool isMouseWheelZoomEnabled () const override
 
QwtPlotMagnifier * getMagnifier () const override
 
void enableLegendPanel (bool enable=true) override
 
bool isLegendPanelEnabled () const override
 
QwtLegend * getLegendPanel () const override
 
void registerPannerFactory (const PannerFactory &factory) override
 
void registerPickerFactory (const PickerFactory &factory) override
 
void registerDataPickerFactory (const DataPickerFactory &factory) override
 
DAFigureWidgetgetFigure () const
 
void notifyPropertiesChanged (ChartPropertyChangeFlags flag)
 

Protected 成员函数

void paintEvent (QPaintEvent *event) override
 

详细描述

增强的Qwt图表控件,提供完整的数据绘图、样式设置和交互控制功能

通过三个接口分离不同方面的功能:

成员枚举类型说明

◆ ChartPropertyChangeFlag

The 图表属性

枚举值
GridStyleChanged 

grid的样式发生变化,包括:enableGridX(),enableGridY(),enableGridXMin(),enableGridYMin(),setGridStyle(),setGridMajorStyle(),setGridMinorStyle() 都会触发此信号

LegendPanelEnabledChanged 

代表LegendPanel开启或关闭,isLegendPanelEnabled

ZoomStateChanged 

代表zoomer开启或关闭,isZoomEnabled

PanStateChanged 

代表pan开启或关闭,isPanEnabled

CrosshairStateChanged 

代表Crosshair开启或关闭,isCrosshairEnabled

DataPickingStateChanged 

代表picking开启或关闭,isYValuePickingEnabled 和 isXYValuePickingEnabled

MouseWheelZoomStateChanged 

代表magnifier开启或关闭,isMouseWheelZoomEnabled

成员函数说明

◆ addBarChart() [1/2]

QwtPlotBarChart * DA::DAChartWidget::addBarChart ( const QVector< double > &  values,
const QString &  title = QString() 
)
overridevirtual

◆ addBarChart() [2/2]

QwtPlotBarChart * DA::DAChartWidget::addBarChart ( const QVector< QPointF > &  points,
const QString &  title = QString() 
)
overridevirtual

◆ addCrossLine()

QwtPlotMarker * DA::DAChartWidget::addCrossLine ( double  x,
double  y,
const QString &  title = QString() 
)
overridevirtual

◆ addCurve() [1/2]

QwtPlotCurve * DA::DAChartWidget::addCurve ( const QVector< double > &  xData,
const QVector< double > &  yData,
const QString &  title = QString() 
)
overridevirtual

◆ addCurve() [2/2]

QwtPlotCurve * DA::DAChartWidget::addCurve ( const QVector< QPointF > &  points,
const QString &  title = QString() 
)
overridevirtual

◆ addHorizontalLine()

QwtPlotMarker * DA::DAChartWidget::addHorizontalLine ( double  y,
const QString &  title = QString() 
)
overridevirtual

◆ addIntervalCurve()

QwtPlotIntervalCurve * DA::DAChartWidget::addIntervalCurve ( const QVector< double > &  values,
const QVector< double > &  mins,
const QVector< double > &  maxs,
const QString &  title = QString() 
)
overridevirtual

◆ addScatter()

QwtPlotCurve * DA::DAChartWidget::addScatter ( const QVector< QPointF > &  points,
const QString &  title = QString() 
)
overridevirtual

◆ addSpectrogram()

QwtPlotSpectrogram * DA::DAChartWidget::addSpectrogram ( QwtGridRasterData *  gridData,
const QString &  title = QString() 
)
overridevirtual

◆ addVerticalLine()

QwtPlotMarker * DA::DAChartWidget::addVerticalLine ( double  x,
const QString &  title = QString() 
)
overridevirtual

◆ clearAllData()

void DA::DAChartWidget::clearAllData ( )
overridevirtual

◆ dataRttis()

QList< int > DA::DAChartWidget::dataRttis ( ) const
overridevirtual

获取所有数据相关的rtti,此函数会影响clearAllData函数

如果你有自定义的数据绘图,你要重写此函数,把新增的rtti加入到返回的rtti列表中

返回
涉及绘图相关的rtti,网格等不会返回
参见
clearAllData

实现了 DA::DAChartDataInterface.

◆ enableCrosshair()

void DA::DAChartWidget::enableCrosshair ( bool  enable = true)
overridevirtual

◆ enableGrid()

void DA::DAChartWidget::enableGrid ( bool  enable = true)
overridevirtual

◆ enableLegend()

void DA::DAChartWidget::enableLegend ( bool  enable = true)
overridevirtual

◆ enableLegendPanel()

void DA::DAChartWidget::enableLegendPanel ( bool  enable = true)
overridevirtual

◆ enableMouseWheelZoom()

void DA::DAChartWidget::enableMouseWheelZoom ( bool  enable = true)
overridevirtual

◆ enablePan()

void DA::DAChartWidget::enablePan ( bool  enable = true)
overridevirtual

◆ enableXYValuePicking()

void DA::DAChartWidget::enableXYValuePicking ( bool  enable = true)
overridevirtual

◆ enableYValuePicking()

void DA::DAChartWidget::enableYValuePicking ( bool  enable = true)
overridevirtual

◆ enableZoom()

void DA::DAChartWidget::enableZoom ( bool  enable = true)
overridevirtual

◆ getAxisColor()

QColor DA::DAChartWidget::getAxisColor ( int  axisId) const
overridevirtual

◆ getAxisLabel()

QString DA::DAChartWidget::getAxisLabel ( int  axisId) const
overridevirtual

◆ getBackgroundBrush()

QBrush DA::DAChartWidget::getBackgroundBrush ( ) const
overridevirtual

◆ getBorderColor()

QColor DA::DAChartWidget::getBorderColor ( ) const
overridevirtual

◆ getChartTitle()

QString DA::DAChartWidget::getChartTitle ( ) const
overridevirtual

◆ getCrosshair()

QwtPlotPicker * DA::DAChartWidget::getCrosshair ( ) const
overridevirtual

◆ getCurves()

QList< QwtPlotCurve * > DA::DAChartWidget::getCurves ( ) const
overridevirtual

◆ getDataBounds()

QRectF DA::DAChartWidget::getDataBounds ( ) const
overridevirtual

◆ getDataPicker()

QwtPlotSeriesDataPicker * DA::DAChartWidget::getDataPicker ( ) const
overridevirtual

◆ getLegendBackground()

QBrush DA::DAChartWidget::getLegendBackground ( ) const
overridevirtual

◆ getLegendPanel()

QwtLegend * DA::DAChartWidget::getLegendPanel ( ) const
overridevirtual

◆ getLegendPosition()

Qt::Alignment DA::DAChartWidget::getLegendPosition ( ) const
overridevirtual

◆ getLegendTextColor()

QColor DA::DAChartWidget::getLegendTextColor ( ) const
overridevirtual

◆ getMagnifier()

QwtPlotMagnifier * DA::DAChartWidget::getMagnifier ( ) const
overridevirtual

◆ getPanner()

QwtPlotPanner * DA::DAChartWidget::getPanner ( ) const
overridevirtual

◆ getZoomer()

QwtPlotCanvasZoomer * DA::DAChartWidget::getZoomer ( ) const
overridevirtual

◆ hasData()

bool DA::DAChartWidget::hasData ( ) const
overridevirtual

◆ isCrosshairEnabled()

bool DA::DAChartWidget::isCrosshairEnabled ( ) const
overridevirtual

◆ isDateTimeAxis()

bool DA::DAChartWidget::isDateTimeAxis ( int  axisId) const
overridevirtual

◆ isGridEnabled()

bool DA::DAChartWidget::isGridEnabled ( ) const
overridevirtual

◆ isLegendEnabled()

bool DA::DAChartWidget::isLegendEnabled ( ) const
overridevirtual

◆ isLegendPanelEnabled()

bool DA::DAChartWidget::isLegendPanelEnabled ( ) const
overridevirtual

◆ isMouseWheelZoomEnabled()

bool DA::DAChartWidget::isMouseWheelZoomEnabled ( ) const
overridevirtual

◆ isPanEnabled()

bool DA::DAChartWidget::isPanEnabled ( ) const
overridevirtual

◆ isXYValuePickingEnabled()

bool DA::DAChartWidget::isXYValuePickingEnabled ( ) const
overridevirtual

◆ isYValuePickingEnabled()

bool DA::DAChartWidget::isYValuePickingEnabled ( ) const
overridevirtual

◆ isZoomEnabled()

bool DA::DAChartWidget::isZoomEnabled ( ) const
overridevirtual

◆ registerDataPickerFactory()

void DA::DAChartWidget::registerDataPickerFactory ( const DataPickerFactory &  factory)
overridevirtual

◆ registerPannerFactory()

void DA::DAChartWidget::registerPannerFactory ( const PannerFactory &  factory)
overridevirtual

◆ registerPickerFactory()

void DA::DAChartWidget::registerPickerFactory ( const PickerFactory &  factory)
overridevirtual

◆ removeCurve()

void DA::DAChartWidget::removeCurve ( QwtPlotCurve *  curve)
overridevirtual

◆ removePlotItem()

void DA::DAChartWidget::removePlotItem ( QwtPlotItem *  item)
overridevirtual

◆ setAxisColor()

void DA::DAChartWidget::setAxisColor ( int  axisId,
const QColor &  color 
)
overridevirtual

◆ setAxisLabel()

void DA::DAChartWidget::setAxisLabel ( int  axisId,
const QString &  label 
)
overridevirtual

◆ setBackgroundBrush()

void DA::DAChartWidget::setBackgroundBrush ( const QBrush &  brush)
overridevirtual

◆ setBorderColor()

void DA::DAChartWidget::setBorderColor ( const QColor &  color)
overridevirtual

◆ setChartTitle()

void DA::DAChartWidget::setChartTitle ( const QString &  title)
overridevirtual

◆ setGridMajorStyle()

void DA::DAChartWidget::setGridMajorStyle ( const QColor &  color,
qreal  width = 1.0,
Qt::PenStyle  style = Qt::DotLine 
)
overridevirtual

◆ setGridMinorStyle()

void DA::DAChartWidget::setGridMinorStyle ( const QColor &  color,
qreal  width = 0.5,
Qt::PenStyle  style = Qt::DotLine 
)
overridevirtual

◆ setGridStyle()

void DA::DAChartWidget::setGridStyle ( const QColor &  color,
qreal  width = 1.0,
Qt::PenStyle  style = Qt::DotLine,
bool  isMajor = true 
)
overridevirtual

◆ setLegendBackground()

void DA::DAChartWidget::setLegendBackground ( const QBrush &  brush)
overridevirtual

◆ setLegendPosition()

void DA::DAChartWidget::setLegendPosition ( Qt::Alignment  alignment)
overridevirtual

◆ setLegendTextColor()

void DA::DAChartWidget::setLegendTextColor ( const QColor &  color)
overridevirtual

◆ setupDateTimeAxis()

void DA::DAChartWidget::setupDateTimeAxis ( int  axisId,
const QString &  format = "yyyy-MM-dd hh:mm:ss" 
)
overridevirtual

◆ zoomIn()

void DA::DAChartWidget::zoomIn ( )
overridevirtual

◆ zoomOut()

void DA::DAChartWidget::zoomOut ( )
overridevirtual

◆ zoomToOriginal()

void DA::DAChartWidget::zoomToOriginal ( )
overridevirtual

该类的文档由以下文件生成: