当前位置:网站首页>Wheel 1:qcustomplot initialization template

Wheel 1:qcustomplot initialization template

2022-07-05 08:34:00 Lao Zhao's blog

void mainWindow::initTable(QCustomPlot *customPot, QString strX, QString strY)
{
    QLinearGradient plotGradient;
    plotGradient.setStart(0, 0);
    plotGradient.setFinalStop(0, 350);
    plotGradient.setColorAt(0, QColor(37, 40, 45));
    plotGradient.setColorAt(1, QColor(37, 40, 45));
    customPot->setBackground(plotGradient);      //  Set the background color 

    QLinearGradient axisRectGradient;
    axisRectGradient.setStart(0, 0);
    axisRectGradient.setFinalStop(0, 350);
    axisRectGradient.setColorAt(0, QColor(37, 40, 45));
    axisRectGradient.setColorAt(1, QColor(37, 40, 45));
    customPot->axisRect()->setBackground(axisRectGradient);   //  Set up QCPAxisRect The background color 
    //x
    customPot->xAxis->setTicks(true);
    customPot->xAxis->setBasePen(QPen(Qt::white, 1));  //  The brush of the axis 
    customPot->xAxis->setTickPen(QPen(Qt::white, 1));  //  Brush of axis scale line 
    customPot->xAxis->setSubTickPen(QPen(Qt::white, 1)); //  The brush of the axis graduation line 
    customPot->xAxis->setTickLabelColor(Qt::white);  //  Axis scale text color 
    customPot->xAxis->setLabel(strX);  //  Only set the label , The color of the axis label will be displayed 
    customPot->xAxis->setLabelColor(Qt::white);   //  Shaft label color 
    customPot->xAxis->setTickLengthIn(3);       //  The length of the scale in the axis 
    customPot->xAxis->setTickLengthOut(5);      //  The length of the scale outside the axis 
    customPot->xAxis->setUpperEnding(QCPLineEnding::esSpikeArrow);
    //y
    customPot->yAxis->setTicks(true);
    customPot->yAxis->setBasePen(QPen(Qt::white, 1));  //  The brush of the axis 
    customPot->yAxis->setTickPen(QPen(Qt::white, 1));  //  Brush of axis scale line 
    customPot->yAxis->setSubTickPen(QPen(Qt::white, 1)); //  The brush of the axis graduation line 
    customPot->yAxis->setTickLabelColor(Qt::white);  //  Axis scale text color 
    customPot->yAxis->setLabel(strY);  //  Only set the label , The color of the axis label will be displayed 
    customPot->yAxis->setLabelColor(Qt::white);   //  Shaft label color 
    customPot->yAxis->setTickLengthIn(3);       //  The length of the scale in the axis 
    customPot->yAxis->setTickLengthOut(5);      //  The length of the scale outside the axis 
    customPot->yAxis->setUpperEnding(QCPLineEnding::esSpikeArrow);

    // Set up x Number of shaft scales 
    customPot->xAxis->ticker()->setTickCount(10);//10 A major scale 
    customPot->xAxis->ticker()->setTickStepStrategy(QCPAxisTicker::tssReadability);// Readability is better than setting 

    //  Each grid corresponds to a scale 
    customPot->xAxis->grid()->setPen(QPen(QColor(140, 140, 140), 1, Qt::DotLine));     //  Gridlines ( Corresponding scale ) paint brush 
    customPot->yAxis->grid()->setPen(QPen(QColor(140, 140, 140), 1, Qt::DotLine));
    customPot->xAxis->grid()->setSubGridPen(QPen(QColor(80, 80, 80), 1, Qt::DotLine)); //  Sub grid lines ( Corresponding sub scale ) paint brush 
    customPot->yAxis->grid()->setSubGridPen(QPen(QColor(80, 80, 80), 1, Qt::DotLine));
    customPot->xAxis->grid()->setSubGridVisible(true);     //  Show sub gridlines 
    customPot->yAxis->grid()->setSubGridVisible(true);

    customPot->xAxis->grid()->setZeroLinePen(Qt::NoPen);
    customPot->yAxis->grid()->setZeroLinePen(Qt::NoPen);

    // Allow mouse drag and scroll wheel zoom 
    customPot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);

    customPot->yAxis->setSubTicks(false);
}

The first wheel , Make a note of , Can be used directly , Convenient for reuse in the future

原网站

版权声明
本文为[Lao Zhao's blog]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/186/202207050831293004.html