QT Qchart绘制曲线 记录下方法

void mainWdlg::creatChart()
{

//  采样图形
QChart *chart= new QChart();
//chart->setTitle("ABC_sample");
ui->MPD2chartView->setChart(chart);

QSplineSeries *series0 = new QSplineSeries();
QSplineSeries *series1 = new QSplineSeries();
series0->setName("MPD1");
series1->setName("MPD2");
curSeries = series0;
QPen pen;
pen.setStyle(Qt::SolidLine);
//pen.setStyle(Qt::DotLine);
pen.setWidth(2);
pen.setColor(Qt::blue);
series0->setPen(pen);
pen.setStyle(Qt::SolidLine);
series1->setColor(Qt::red);

chart->addSeries(series0);
chart->addSeries(series1);

QValueAxis *axisX= new QValueAxis();
curAxis = axisX;
axisX->setGridLineVisible(true);   //网格线可见
axisX->setRange(0, 100);
axisX->setLabelFormat("%u");

       axisX->setTickCount(5);       //设置多少个大格
       axisX->setMinorTickCount(4);   //设置每个大格里面小刻度线的数目
       axisX->setTitleText("N");  //设置描述
QValueAxis *axisY= new QValueAxis();
       axisY->setRange(0, 5);
       axisY->setLabelFormat("%.1f");
       axisY->setGridLineVisible(true);
       axisY->setTickCount(6);
       axisY->setMinorTickCount(0);
       axisY->setTitleText("MPD/V");

       chart->setAxisX(axisX, series0);
       chart->setAxisY(axisY, series0);
       chart->setAxisX(axisX, series1);
       chart->setAxisY(axisY, series1);

}

void mainWdlg::prepareDate()
{

QSplineSeries *series0 = dynamic_cast<QSplineSeries*>(ui->MPD2chartView->chart()->series().at(0));
QSplineSeries *series1 = dynamic_cast<QSplineSeries*>(ui->MPD2chartView->chart()->series().at(1));


series0->clear();
series1->clear();




double  dunit = ADC_REF/65535.0;
for(int i=0;i<100;i++)
{
    double temp1=MPD1_array[i]*dunit;
    double temp2=MPD2_array[i]*dunit;

    series0->append(i,temp1);
    series1->append(i,temp2);
}

}
void mainWdlg::updateChart()
{
//QChart * aChart = ui->MPD_Dither_Chart->chart();
ui->MPD2chartView->chart();
ui->chartView2->chart();

// QMargins mgin = aChart->margins(); // 边距

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值