欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

用QtChart绘制雷达图(极坐标图)的教程 - 使用QtWidgets库

最编程 2024-01-24 10:41:21
...

1. 前言

突然好奇极坐标图(雷达图)是怎么实现的,就查了一下资料,发现有几种实现方法:一是QtChart实现;二是QCustomPlot实现;三是自绘。前两者都给了示例,所以我就学了学,后者自绘我尽力吧。

2. 说明和代码

QtChart实现图表一般要设置三部分:模型、数据、轴,如果要实现极坐标图,三者分别为:

  • 模型:必须为QPolarChart;
  • 数据:想要什么样的数据表达形式,可选择不同的类来存储数据,比如散点选择QScatterSeries、直线选择QLineSeries等;
  • :轴也是根据表现形式的不同选择不同的轴类,都是继承QAbstractAxis,最常用到的是QValueAxis。

2.1. 一般结构代码

这里先给个示例代码:

    const qreal angularMin = -100;
    const qreal angularMax = 100;

    const qreal radialMin = -100;
    const qreal radialMax = 100;

    //数据
    QScatterSeries *series1 = new QScatterSeries();
    series1->setName("scatter");
    for (int i = angularMin; i <