/* * Init the ECG vector and display the ECG. */ void PlottingWidget::initEcg(QVector<QVector<QPointF> > fileData) { ecgVals = fileData; tlbl->setText("Done!"); progBar->setMaximum(10); progBar->setValue(10); recordingTime = static_cast<int>(ecgVals.last().at(0).x()); nFrames = static_cast<int>(recordingTime/timeframeComboBox->itemData(timeframeComboBox->currentIndex()).toInt()); startingPointSlider->setInterval(0,nFrames); plotVector(); for (int ii = 0; ii<4; ii++) { d_plots[ii]->setInterval(0, timeframeComboBox->itemData(timeframeComboBox->currentIndex()).toInt()); } if (recordingTime>5) { QVector<double> maxVector; QVector<double> minVector; for (int ii = 0; ii<4; ii++) { maxVector.append(ecgVals[500].at(ii).y()); minVector.append(ecgVals[500].at(ii).y()); } for (int ii = 500; ii<ecgVals.length(); ii++) { for (int jj = 0; jj<4; jj++) { if(ecgVals[ii].at(jj).y()<maxVector[jj]) { if (ecgVals[ii].at(jj).y()<minVector[jj]) { minVector[jj] = ecgVals[ii].at(jj).y(); } } else { maxVector[jj] = ecgVals[ii].at(jj).y(); } } } for (int ii = 0; ii<4; ii++) { d_plots[ii]->setYAxis(minVector[ii], maxVector[ii]); } } // d_plot->setInterval(0, timeframeComboBox->itemData(timeframeComboBox->currentIndex()).toInt()); }
PlotHelper::PlotHelper(int argc, const char ** argv, casadi::Matrix<double> v1, casadi::Matrix<double> v2, casadi::Matrix<double> v3) { pls = new plstream(); // Parse and process command line arguments. // const char argv2[] = "-o someTitle -bg FFFFFF -dev svg"; pls->parseopts(&argc, argv, PL_PARSE_FULL); // Initialize PLplot. pls->init(); pls->font(1); // Make log plots using two different styles. plotVector(v1, v2, v3); }
PlotHelper::PlotHelper(int argc, const char ** argv, casadi::Simulator simulator) { pls = new plstream(); // Parse and process command line arguments. // const char argv2[] = "-o someTitle -bg FFFFFF -dev svg"; pls->parseopts(&argc, argv, PL_PARSE_FULL); // Initialize PLplot. pls->init(); pls->font(1); // Make log plots using two different styles. casadi::Matrix<double> o0 = simulator.getOutput("o0"); casadi::Matrix<double> o1 = simulator.getOutput("o1").data(); casadi::Matrix<double> o2 = simulator.getOutput("o2").data(); plotVector(o0, o1, o2); }