初始化QChart极坐标图(含曲线、散点)
生活随笔
收集整理的這篇文章主要介紹了
初始化QChart极坐标图(含曲线、散点)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
步驟一
第一步.pro頭文件中
QT +=charts步驟二:
.h文件中
//以下是QtChart使用必備的幾個 #include <QtCharts/QChartView> #include <QtCharts/QPolarChart> #include <QtCharts/QScatterSeries> QT_CHARTS_USE_NAMESPACE#include <QLineSeries> #include <QValueAxis> void InitPolarChart(QChartView *chartViewWD); //初始極坐標繪圖區域QLineSeries *seriesWD; //曲線聲明QScatterSeries *seriesWD2;QPolarChart *chartWD; //極坐標圖表聲明QValueAxis *angleAxis; //角坐標,相對應于直角坐標系的X軸QValueAxis* radiaAxis;//極坐標,相對應于直角坐標系的Y軸QChartView* chartViewWD; //畫布聲明步驟三
函數
/********************************************** * @projectName IUADS_UG * @brief 初始化QChartview繪圖 * @param void * @return void * @author ZYH * @date 2021-06-29 **********************************************/ void Target_Detectiom::InitPolarChart(QChartView *chartViewWD) {chartViewWD->setStyleSheet(QString("color:rgba(255,255,255,255);background-color:rgba(100,100,100,100)"));//曲線seriesWD = new QLineSeries(); //新建一條曲線seriesWD->setName("目標探測");seriesWD->setPen(QPen(QBrush(Qt::green),2,Qt::DashLine));seriesWD2 = new QScatterSeries(); //新建一條散點seriesWD2->setName("目標跟蹤");seriesWD2->setBrush(Qt::red);seriesWD2->setMarkerSize(7);seriesWD2->setPen(QPen(QBrush(Qt::red),1,Qt::DashLine));//圖表配置chartWD = new QPolarChart(); //新建一個極坐標系的圖chartWD->addSeries(seriesWD); //為圖表添加一條曲線chartWD->addSeries(seriesWD2); //為圖表添加一條曲線// chartWD->setTheme(QChart::ChartThemeDark); //設置圖表theme// series5->setOpacity(0.5);//坐標軸angleAxis = new QValueAxis();angleAxis->setTickCount(13);// angleAxis->setLabelFormat("%.1f");angleAxis->setLabelFormat("%d");angleAxis->setShadesVisible(true);angleAxis->setLabelsColor(Qt::white);angleAxis->setShadesBrush(QBrush(QColor(72, 72, 72)));chartWD->addAxis(angleAxis, QPolarChart::PolarOrientationAngular);QValueAxis *radialAxis = new QValueAxis();radialAxis->setTickCount(1);radialAxis->setLabelFormat("%.2f");radialAxis->setLabelsColor(Qt::white);chartWD->addAxis(radialAxis, QPolarChart::PolarOrientationRadial);chartWD->setBackgroundVisible(false);seriesWD->attachAxis(radialAxis);seriesWD->attachAxis(angleAxis);seriesWD2->attachAxis(radialAxis);seriesWD2->attachAxis(angleAxis);chartViewWD->setChart(chartWD);chartViewWD->setRenderHint(QPainter::Antialiasing);// chartViewWD->setStyleSheet(R"(QGraphicsView{background-image:url(:/image/111/t_bg.png);})");// chartWD->setTitle("目標探測");//chartWD->setTitleBrush(Qt::white);chartWD->legend()->setLabelColor(Qt::white);QFont ft;ft.setPointSize(11);chartWD->legend()->setFont(ft);radialAxis->setRange(0, 1);angleAxis->setRange(0, 360); }最后使用時候
//以如下方式放數據 seriesWD->append(角度, 值); //這個被初始化為一條曲線 seriesWD2->append(角度, 值); //這個被初始化為紅色的散點最終實現圖的樣式
總結
以上是生活随笔為你收集整理的初始化QChart极坐标图(含曲线、散点)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt控件与按钮颜色透明
- 下一篇: QCustomplot控件设备背景图片(