
上图是画了一条y=200-x 的直线。代码如下。
for (int i = 0i<PLOT_SIZE - 1i++)
{
d_x = i// time axis
d_y = 200 - i
}
ui->myPlot->setAxisScale(QwtPlot::xBottom, 0, 250)
ui->myPlot->setAxisScale(QwtPlot::yLeft,-50,200)
QwtPlotCurve curve("y=200-x")
curve.attach(ui->myPlot)//把曲线附加到plot上
curve.setData(d_x,d_y,PLOT_SIZE)//设置数据
curve.setStyle(QwtPlotCurve::Lines)//直线形式
//curve.setCurveAttribute(QwtPlotCurve::Fitted, true)//使曲线更光滑
curve.setPen(QPen(Qt::blue))//设置画笔
ui->myPlot->replot()
好吧。NC了。之前一直找不到原因。发现时setdata里的赋值范围PLOTSIZE比数组长度大一,所以自动加了个(0,0)点。。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)