1.MFC,BCB绘图有Teechart控件,很好用。QT绘图有QWT和QCustomPlot,QWT比较麻烦一些,相比来说QCustomPlot简单易用。
2.官网下载地址:http://www.qcustomplot.com/index.php/download
如上图,下载第一个QCustomPlot.tar.gz,包括源文件和文档demo等。
demo比较重要,可以参考demo代码。
3.只有一个qcustomplot.cpp和和一个qcustomplot.h头文件,解压可见。
4.新建Widget 工程,添加上面的两个文件。
然后工程的pro文件的第9行末尾加入:printsupport,如下:
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport
(这是因为Qt 5中将所有打印的相关类都放到了Qt Print Support模块。)
5.向主窗口添加一个widget容器控件,在容器组内,或搜索widget。
对着所添加的widget区域点击右键,选择“提升为”。
输入提升类名称输入“QCustomPlot”,点击添加。
双击控件,修改名称为customPlot(或直接在属性栏修改)。
6.运行即可。
7.添加曲线:
<code class="hljs haskell has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"> //定义两个可变<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QVector</span>数组存放绘图的坐标数据 <span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QVector</span><double> x(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">100</span>),y(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">100</span>);//分别存放x和y坐标的数据,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">100</span>为数据长度 //添加数据,我们这里演示y=x^<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span>,为了正负对称,我们x从-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>到+<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span> for(int i=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>;i<<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">100</span>;i++) { x[i] = i/<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span> - <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>; y[i] = x[i] * x[i] * x[i]; } //设置属性可缩放,移动等 ui->customPlot->setInteractions(<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QCP</span>::iRangeDrag | <span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QCP</span>::iRangeZoom | <span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QCP</span>::iSelectAxes | <span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QCP</span>::iSelectLegend | <span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QCP</span>::iSelectPlottables); //设置坐标轴标签名称 ui->customPlot->xAxis->setLabel(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"x"</span>); ui->customPlot->yAxis->setLabel(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"y"</span>); ui->customPlot->legend->setVisible(true); // ui->customPlot->axisRect()->setupFullAxesBox(); ui->customPlot->addGraph();//向绘图区域<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QCustomPlot</span>(从widget提升来的)添加一条曲线 ui->customPlot->graph(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>)->setName(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"曲线1"</span>);//曲线名称 ui->customPlot->graph(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>)->setData(x,y); //设置曲线数据 //设置坐标轴显示范围,否则我们只能看到默认的范围 ui->customPlot->xAxis->setRange(-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>); ui->customPlot->yAxis->setRange(-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1100</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1100</span>); //重绘,这里可以不用,官方例子有,执行setData函数后自动重绘 //我认为应该用于动态显示或者是改变坐标轴范围之后的动态显示,我们以后探索 //ui->customPlot->replot(); //设置曲线颜色 <span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QPen</span> pen; pen.setWidth(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span>); pen.setColor(<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">Qt</span>::blue);// line color blue for first graph ui->customPlot->graph(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>)->setPen(pen); ui->customPlot->graph(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>)->setBrush(<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QBrush</span>(<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QColor</span>(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">255</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20</span>))); // first graph will be filled with translucent blue ui->customPlot->addGraph();//添加第二条曲线 ui->customPlot->graph(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>)->setName(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"曲线2"</span>);//曲线名称 ui->customPlot->graph(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>)->setPen(<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">QPen</span>(<span class="hljs-type" style="box-sizing: border-box; color: rgb(102, 0, 102);">Qt</span>::red)); // line color red for second graph for(int i=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>;i<<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">101</span>;i++) { y[i] +=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">100</span>; } ui->customPlot->graph(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>)->setData(x,y);</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; opacity: 0.198683; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li><li style="box-sizing: border-box; padding: 0px 5px;">33</li><li style="box-sizing: border-box; padding: 0px 5px;">34</li><li style="box-sizing: border-box; padding: 0px 5px;">35</li><li style="box-sizing: border-box; padding: 0px 5px;">36</li><li style="box-sizing: border-box; padding: 0px 5px;">37</li><li style="box-sizing: border-box; padding: 0px 5px;">38</li><li style="box-sizing: border-box; padding: 0px 5px;">39</li><li style="box-sizing: border-box; padding: 0px 5px;">40</li><li style="box-sizing: border-box; padding: 0px 5px;">41</li><li style="box-sizing: border-box; padding: 0px 5px;">42</li><li style="box-sizing: border-box; padding: 0px 5px;">43</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li><li style="box-sizing: border-box; padding: 0px 5px;">33</li><li style="box-sizing: border-box; padding: 0px 5px;">34</li><li style="box-sizing: border-box; padding: 0px 5px;">35</li><li style="box-sizing: border-box; padding: 0px 5px;">36</li><li style="box-sizing: border-box; padding: 0px 5px;">37</li><li style="box-sizing: border-box; padding: 0px 5px;">38</li><li style="box-sizing: border-box; padding: 0px 5px;">39</li><li style="box-sizing: border-box; padding: 0px 5px;">40</li><li style="box-sizing: border-box; padding: 0px 5px;">41</li><li style="box-sizing: border-box; padding: 0px 5px;">42</li><li style="box-sizing: border-box; padding: 0px 5px;">43</li></ul>
效果如下图:
参考了其他的程序。
<code class="hljs lasso has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//设置坐标颜色/坐标名称颜色</span> ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>yAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setLabelColor(TextColor); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>xAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setTickLabelColor(TextColor); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>yAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setTickLabelColor(TextColor); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>xAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setBasePen(QPen(TextColor, TextWidth)); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>yAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setBasePen(QPen(TextColor, TextWidth)); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>xAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setTickPen(QPen(TextColor, TextWidth)); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>yAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setTickPen(QPen(TextColor, TextWidth)); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>xAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setSubTickPen(QPen(TextColor, TextWidth)); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>yAxis<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setSubTickPen(QPen(TextColor, TextWidth)); <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//设置画布背景色</span> QLinearGradient plotGradient; plotGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setStart(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>); plotGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setFinalStop(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">350</span>); plotGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setColorAt(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, QColor(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80</span>)); plotGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setColorAt(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>, QColor(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50</span>)); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setBackground(plotGradient); <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//设置坐标背景色</span> QLinearGradient axisRectGradient; axisRectGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setStart(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>); axisRectGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setFinalStop(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">350</span>); axisRectGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setColorAt(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, QColor(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80</span>)); axisRectGradient<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>setColorAt(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>, QColor(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span>)); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>axisRect()<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setBackground(axisRectGradient); <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//设置图例提示位置及背景色</span> ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>axisRect()<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>insetLayout()<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setInsetAlignment(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>, Qt<span class="hljs-tag" style="color: rgb(0, 102, 102); box-sizing: border-box;">::AlignTop</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">|</span> Qt<span class="hljs-tag" style="color: rgb(0, 102, 102); box-sizing: border-box;">::AlignRight</span>); ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>legend<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>setBrush(QColor(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">255</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">255</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">255</span>, <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">200</span>)); </code><p><code class="hljs lasso has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"> ui<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>qCustomPlot<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">-></span>replot();</code><code class="hljs lasso has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"> </code><code class="hljs lasso has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">http://blog.youkuaiyun.com/a379039233/article/details/49666307 </code></p>