QT对于统计图像、函数图像等的绘制是没有相关组件的帮助的,只有利用手工绘制图片。
QwtPlot是用来绘制二维图像的widget,继承自QFrame 和 QwtPlotDict。不过严格的说来,它只是一个视图窗口,真正的绘制设备是它的中心部件QwtPlotCanvas类。
在它的画板上可以无限制的显示绘画组件。绘画组件可以是曲线(QwtPlotCurve)、标记(QwtPlotMarker)、网格(QwtPlotGrid)、或者其它从QwtPlotItem继承的组件。
QwtPlot拥有4个axes(轴线)
一个QwtPlot有四条坐标抽,每一个项都依附于X轴或者Y轴。每一个轴的刻度可以通过set (QwtScaleDiv)或者根据绘制的图元通过算法(QwtScaleEngine)单独配置。
变量 | 功能 |
---|---|
yLeft | Y axis left of the canvas. |
yRight | Y axis right of the canvas. |
xBottom | X axis below the canvas. |
xTop | X axis above the canvas. |
常用函数接口
接口 | 功能 |
---|---|
setAxisTitle | 设置轴标题 |
enableAxis | 主要是显示xTop,yRight坐标轴 |
setAxisMaxMajor | 设置某个某个坐标轴扩大比例尺的最大间隔数目 |
setAxisMaxMinor | 设置某个某个坐标轴缩小比例尺的最大间隔数目 |
setAxisScale | 禁用自动缩放比例尺,为某个坐标轴指定一个修改的比例尺 |
insertLegend | 添加图例(标注) |
常用组件
组件 | 功能 |
---|---|
QwtPlotCurve | 曲线 |
QwtPlotMarker | 标记 |
QwtPlotGrid | 网格 |
QwtPlotHistogram | 直方图 |
other | 从QwtPlotItem继承的组件 |
QwtPlotItem plot | 能显示的类,如果想要实现自己绘画图形,要继承此类实现rtti和draw接口 |
QwtPlotPanner | 平移器 (用鼠标左键平移) |
QwtPlotMagnifier | 放大器 (用鼠标滚轮缩放) |
QwtPlotCanvas | 画布 |
QwtScaleMap | 比例图—可以提供一个逻辑区域到实际区域的坐标转换 |
QwtScaleWidget | 比例窗口 |
QwtScaleDiv | 比例布局 |
QwtLegent | 标注 |
QwtPlotLayout | 布局管理器 |
QwtScaleDraw | 自画坐标轴 |
QwtPlotCure简介
常见接口 | 功能 |
---|---|
setPen | 设置画笔 |
setData | 设置曲线的数据 |
setStyle | 设置曲线形式,点、直线、虚线等等 |
setCurveAttribute | 设置曲线属性,一般设置Fitted |
attch | 把曲线附加到QwlPlot上 |
下面看一个小例子,结果如下:
该实例绘制了两条sin曲线并自动刷新曲线显示,一个曲线是平缓曲线,另一条是硬拐点曲线,之后按动按键使两个曲线均向右平移,注意,同时移动多条曲线的情况下不要使用setData函数了,程序会错误退出,应该使用setSamples函数,具体参见代码
<code class="hljs cpp has-numbering" style="font-family: Arial, Helvetica, sans-serif; padding: 0px;"><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#ifndef</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> MAINWINDOW_H </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#define</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> MAINWINDOW_H </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QMainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QDebug</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><Qt/qmath.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QVector</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot_curve.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot_magnifier.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot_panner.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_legend.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_point_data.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">namespace</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Ui</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">class</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">class</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">public</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QMainWindow</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> Q_OBJECT </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">public</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">explicit</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QWidget</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">parent </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">~</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">();</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">private</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> slots</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> on_pushButton_clicked</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">();</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">private</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve_r</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//硬折点曲线画布</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QVector</span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><</span><span class="hljs-keyword" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">double></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> xs</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QVector</span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><</span><span class="hljs-keyword" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">double></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">};</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#endif</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">// MAINWINDOW_H</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></code>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
<code class="hljs vala has-numbering" style="font-family: Arial, Helvetica, sans-serif; padding: 0px;"><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"mainwindow.h"</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"ui_mainwindow.h"</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QHBoxLayout</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QtGui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">/</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QApplication</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><Qt/qmath.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QVector</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot_curve.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot_magnifier.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_plot_panner.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_legend.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><qwt_point_data.h></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QWidget</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">parent</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">)</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QMainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">parent</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">),</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">)</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setupUi</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">this</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">resize</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">640</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">400</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setAutoReplot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-literal" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">true</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//设置坐标轴的名称</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setAxisTitle</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">xBottom</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-string" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"x->"</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setAxisTitle</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">yLeft</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-string" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"y->"</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//设置坐标轴的范围</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setAxisScale</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">yLeft</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">1.0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">1.0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//设置右边标注</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">insertLegend</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtLegend</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(),</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">RightLegend</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//使用滚轮放大/缩小</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">)</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotMagnifier</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">canvas</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">()</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//使用鼠标左键平移</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">)</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotPanner</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">canvas</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">()</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//计算曲线数据</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">for</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> x </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> x </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">2.0</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> M_PI</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> x</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">+=(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">M_PI </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">/</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">10.0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">))</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> xs</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">append</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">x</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">append</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">qSin</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">x</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">));</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//平滑曲线</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">attach</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//把曲线附加到plot上</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setSamples</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">xs</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setStyle</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Lines</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//设置曲线上是点还是线,默认是线,所以此行可不加</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setCurveAttribute</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Fitted</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-literal" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">true</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//使曲线更光滑,不加这句曲线会很硬朗,有折点</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Qt</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">blue</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">));</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//设置画笔</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve_r</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">attach</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">plot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve_r</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setSamples</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">xs</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve_r</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Qt</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">green</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">));</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::~</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">()</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">delete</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ui</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">MainWindow</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">on_pushButton_clicked</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">()</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">for</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">int</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">count</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">()-</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">1</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">>=</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">1</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">--)</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">]=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">at</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">1</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">]=</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0.5</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setSamples</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">xs</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve_r</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">.</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setSamples</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">xs</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">ys</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></code>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
散点图:
<code class="hljs cs has-numbering" style="font-family: Arial, Helvetica, sans-serif; padding: 0px;"><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//头文件</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">class</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">publicQwtPlot </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">public</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-title" style="padding: 0px;"><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">();</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">~</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">public</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-title" style="padding: 0px;"><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">drawPlotCruve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">();</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">private</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QVector</span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><</span><span class="hljs-keyword" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">double></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> xData</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QVector</span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);"><</span><span class="hljs-keyword" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">double></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> yData</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">};</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//实现文件:</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-preprocessor" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">#include</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"cruvePlot.h"</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">const</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">int</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">LineNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">7</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">const</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">int</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">7</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(){}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::~</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">){}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">void</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">CCruvePlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">drawPlotCruve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">()</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//QMessageBox::information(this,"Running!","Running matlab Function.....");</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> setTitle</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-string" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"A Simple QwtPlot Demonstration"</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//设置标题</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> insertLegend</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtLegend</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(),</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlot</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">RightLegend</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//设置标线的栏</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> setAxisTitle</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">xBottom</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-string" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"x -->"</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> setAxisScale</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">xBottom</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0.0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">10.0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> setAxisTitle</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">yLeft</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-string" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"y -->"</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> setAxisScale</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">yLeft</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">10.0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">curve </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-string" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"lineFirst"</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//实例化一条曲线</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">attach</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">this</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">x</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">];</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">y</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">];</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">for</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">int</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">++)</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">{</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> x</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">]=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> y</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">]=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">+</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">3</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setSamples </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">x</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">y</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//传画曲线的数据</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Qt</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">red</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">));</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">curve2 </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QwtPlotCurve</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-string" style="padding: 0px;"><span class="str" style="padding: 0px; color: rgb(0, 136, 0);">"lineSecond"</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="hljs-comment" style="padding: 0px;"><span class="com" style="padding: 0px; color: rgb(136, 0, 0);">//实例化另一条线</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">attach</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">this</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">x2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">];</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">y2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">new</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">double</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">];</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">for</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">int</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">=</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">0</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);"><</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">++){</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> x2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">]=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">*</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">3</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> y2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">[</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">]=</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">i</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">+</span><span class="hljs-number" style="padding: 0px;"><span class="lit" style="padding: 0px; color: rgb(0, 102, 102);">3</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setSamples </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">x2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">y2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">,</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">PointNum</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">);</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> curve2</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">-></span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">setPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">QPen</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">(</span><span class="typ" style="padding: 0px; color: rgb(102, 0, 102);">Qt</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">::</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);">blue</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">));</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="hljs-keyword" style="padding: 0px;"><span class="kwd" style="padding: 0px; color: rgb(0, 0, 136);">return</span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">;</span><span class="pln" style="padding: 0px; color: rgb(0, 0, 0);"> </span><span class="pun" style="padding: 0px; color: rgb(102, 102, 0);">}</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></code><br style="font-family: Arial, Helvetica, sans-serif; padding: 0px;" /><br style="font-family: Arial, Helvetica, sans-serif; padding: 0px;" /><span class="pln" style="font-family: Arial, Helvetica, sans-serif; padding: 0px; color: rgb(0, 0, 0);">http</span><span class="pun" style="font-family: Arial, Helvetica, sans-serif; padding: 0px; color: rgb(102, 102, 0);">:</span><span class="com" style="font-family: Arial, Helvetica, sans-serif; padding: 0px; color: rgb(136, 0, 0);">//blog.csdn.net/u013007900/article/details/50055353</span>