QwtPlot解读---from Qwt-6.6.1

 QwtPlot继承自QFrame和QwtPlotDict.QwtPlot是一个二维绘图部件,它只是一个视图窗口,真正的绘图设备是
它的中心部件QwtPlotCanvas.在QwtPlot的画布上可以显示不限数量的基地图元项,图元项可以是QwtPlotCurve,
QwtPlotMarker,QwtPlotGrid或任意从QwtPlotItem派生出的子类.一个QwtPlot有4条轴线,没一个轴线都可通过
setQwtScaleDiv或根据绘制的项调用QwtScaleEngine.
QwtPlot自身不能添加基地图元项,QwtPlotItem决定自己被添加到哪个QwtPlot: 
void attatch(QwtPlot *plot); void detach();
 QwtPlotDict是一个item的字典类,用于管理添加到QwtPlot上的所有项。QwtPlotDict按照z值组织items。如果
autoDelegate()为真,所有依附的项会在QwtPlotDict的析构函数中被删除。
 QwtPlotCanvas类继承自QFrame,是QwtPlot的画布。
/****************************************************************************************/
公有类型:
enum Axis{
 yLeft,yRight,xBottom,xTop,
 axisCnt
}; //坐标轴索引
公有槽:
virtual void replot(); //重绘地基
void autoRefresh(); //如果autoReplot()为真,重绘地基
信号:
void itemAttached(QwtPlotItem *plotItem,bool on);
void legendDataChanged(const QVariant &itemInfo,
 const QList<QwtLegendDatta>&data);//图表数据改变
公有成员函数:
• QwtPlot (QWidget ∗=NULL)
• QwtPlot (const QwtText &title, QWidget ∗=NULL)
• virtual ∼QwtPlot ()
 
• void applyProperties (const QString &); //应用属性
• QString grabProperties () const; //获取属性
• void setAutoReplot (bool=true); //设置或重设自动地基
• bool autoReplot () const; //判断是否自动重设地基
• void setPlotLayout (QwtPlotLayout ∗); //设置一个新的地基布局
• QwtPlotLayout ∗ plotLayout (); //获取地基布局
• const QwtPlotLayout ∗ plotLayout () const; //获取地基布局
• void setTitle (const QString &); //设置标题
• void setTitle (const QwtText &t); //设置标题
• QwtText title () const; //获取标题文本
• QwtTextLabel ∗ titleLabel (); //获取标题标签
• const QwtTextLabel ∗ titleLabel () const; //const
• void setFooter (const QString &); //QString设置脚注
• void setFooter (const QwtText &t); //QwtText设置脚注
• QwtText footer () const; //获取脚注文本QwtText;
• QwtTextLabel ∗ footerLabel (); //获取脚注文本标签
• const QwtTextLabel ∗ footerLabel () const; //const
• void setCanvas (QWidget ∗); //设置画布
• QWidget ∗ canvas (); //获取画布
• const QWidget ∗ canvas () const; //const
• void setCanvasBackground (const QBrush &); //设置画布背景
• QBrush canvasBackground () const; //获取画布背景
• virtual QwtScaleMap canvasMap (int axisId) const;
• double invTransform (int axisId, int pos) const;
• double transform (int axisId, double value) const; //指定一个坐标值
• QwtScaleEngine ∗ axisScaleEngine (int axisId);
• const QwtScaleEngine ∗ axisScaleEngine (int axisId) const
• void setAxisScaleEngine (int axisId, QwtScaleEngine ∗)
• void setAxisAutoScale (int axisId, bool on=true); //启用指定轴线自动比例间隔
• 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 ∗)
• double axisStepSize (int axisId) const; //返回在setAxisScale中设置的步长值
• QwtInterval axisInterval (int axisId) const; //返回当前轴线的比例尺内部间隔
• const QwtScaleDiv & axisScaleDiv (int axisId) const; //返回指定轴线的比例间隔
• const QwtScaleDraw ∗ axisScaleDraw (int axisId) const; //返回指定轴线的比例尺绘制类
• QwtScaleDraw ∗ axisScaleDraw (int axisId)
• const QwtScaleWidget ∗ axisWidget (int axisId) const; //返回轴线控件(比例尺控件)
• QwtScaleWidget ∗ axisWidget (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 axisMaxMinor (int axisId) const
• void setAxisMaxMajor (int axisId, int maxMajor); //设置指定轴线的主要比例尺间隔的最大值
• int axisMaxMajor (int axisId) const
• void insertLegend (QwtAbstractLegend ∗, LegendPosition=QwtPlot::RightLegend,
 double ratio=-1.0); //插入图例
• QwtAbstractLegend ∗ legend ()
• const QwtAbstractLegend ∗ legend () const
• void updateLegend ();
• void updateLegend (const QwtPlotItem ∗); //更新图例
• virtual QSize sizeHint () const
• virtual QSize minimumSizeHint () const
• virtual void updateLayout (); //调整基地内容和它当前大小匹配
• virtual void drawCanvas (QPainter ∗)
• void updateAxes (); //重建轴线比例尺
• void updateCanvasMargins (); //更新画布边缘
• virtual void getCanvasMarginsHint (const QwtScaleMap maps[], const QRectF &canvasRect,
 double &left,double &top, double &right, double &bottom) const
//计算画布边缘
• virtual bool event (QEvent ∗); //增加布局请求的处理
• virtual bool eventFilter (QObject ∗, QEvent ∗); //事件过滤
• virtual void drawItems (QPainter ∗, const QRectF &, const QwtScaleMap maps[axisCnt]) const
• virtual QVariant itemToInfo (QwtPlotItem ∗) const; //在图例上构建一个可以表明基地项的信息
• virtual QwtPlotItem ∗ infoToItem (const QVariant &) const
保护成员函数:
* virtual void sizeEvent(QResizeEvent *e);
静态保护成员函数:
static bool axisValid(int axisId); //如果指定的轴线存在返回true
/****************************************************************************************/
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值