/*
 * 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());
}
Exemple #2
0
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);

}
Exemple #3
0
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);

}