中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Qt圖形圖像開發之曲線圖表模塊QChart庫一個chart中顯示兩條曲線詳細方法與實例

發布時間:2020-10-21 12:10:17 來源:腳本之家 閱讀:440 作者:qq_610642 欄目:編程語言

首先要了解QChartView、QChart、QLineSeries、QValueAxis的實體之間的關系,例如一個QChartView中可以包含幾個QValueAxis?這些可參考 Qt圖形圖像開發曲線圖表模塊QChart庫基本用法、各個類之間的關系說明

每個chart可以包含多個QLineSeries數據系列,每個QLineSeries數據系列又包含了2個QValueAxis數值軸或QDateTimeAxis時間軸。

那么這個chart中的多個數據系列,一起顯示在同一個chart中,會是什么情形?

新建ui工程,并添加MainWindow私有變量:

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
 
#include <QMainWindow>
#include <QChartView>
#include <QChart>
#include <QLineSeries>
#include <QValueAxis>
 
QT_CHARTS_USE_NAMESPACE
 
namespace Ui {
class MainWindow;
}
 
class MainWindow : public QMainWindow
{
 Q_OBJECT
 
public:
 explicit MainWindow(QWidget *parent = 0);
 ~MainWindow();
 
private:
 Ui::MainWindow *ui;
 QChart *chart;//非必要(QCharView實體中自帶一個QChart實體)
 QLineSeries *series_sin, *series_cos;
 QValueAxis *axis_x_sin, *axis_y_sin, *axis_x_cos, *axis_y_cos;
};
 
#endif // MAINWINDOW_H
MainWindow::MainWindow(QWidget *parent) :
 QMainWindow(parent),
 ui(new Ui::MainWindow),
 chart(new QChart),//或者不用new,直接指向ui->graphicsView->chart()也行
 series_sin(new QLineSeries),//sin曲線的數據點
 series_cos(new QLineSeries),//cos曲線的數據點
 axis_x_sin(new QValueAxis),//sin的X軸
 axis_y_sin(new QValueAxis),//sin的Y軸
 axis_x_cos(new QValueAxis),//cos的X軸
 axis_y_cos(new QValueAxis)//cos的Y軸
{
 ui->setupUi(this);
 ui->graphicsView->setChart(chart);//view中顯示出chart
 
 for(float x = 0; x < 10; x += 0.1)
 {
  series_sin->append(x, sin(x));
 }
 axis_x_sin->setRange(-5,25);
 axis_y_sin->setRange(-2,2);
 chart->addSeries(series_sin);
 /*功能是:添加軸,并把軸和數據系列連接。注意,這一行并不能用來給chart添加數據系列
  添加數據系列,要用chart->addSeries*/
 chart->setAxisX(axis_x_sin, series_sin);
 chart->setAxisY(axis_y_sin, series_sin);
 
 
 for(float x = 10; x < 20; x += 0.1)
 {
  series_cos->append(x, cos(x));
 }
 
 axis_x_cos->setRange(5,25);
 axis_y_cos->setRange(-2,2);
 chart->addSeries(series_cos);
 chart->setAxisX(axis_x_cos, series_cos);//cos使用自己的X軸
 chart->setAxisY(axis_y_cos, series_cos);
// chart->setAxisX(axis_x_sin, series_cos);//cos共享sin曲線的X軸
// chart->setAxisY(axis_y_sin, series_cos);
}

運行結果如下所示,我們發現,兩條曲線各自為政。

Qt圖形圖像開發之曲線圖表模塊QChart庫一個chart中顯示兩條曲線詳細方法與實例

根據上面程序最后兩行的注釋,我們如果把這兩個QLineSeries數據系列,綁定到同一組XY軸上(也即,兩條曲線共享同一組XY軸),兩條曲線就能“真正”的顯示在同一個chart中了,如下所示。

Qt圖形圖像開發之曲線圖表模塊QChart庫一個chart中顯示兩條曲線詳細方法與實例

本文介紹了Qt曲線圖表模塊QChart庫一個chart中顯示兩條曲線詳細方法與實例,更多關于Qt曲線圖表模塊QChart庫知識請查看下面的相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

页游| 道真| 金昌市| 乌苏市| 涞水县| 彩票| 遂宁市| 汕尾市| 六安市| 峨边| 南乐县| 肃北| 陆川县| 普兰店市| 德昌县| 大同县| 商水县| 德惠市| 名山县| 深泽县| 即墨市| 西华县| 犍为县| 江安县| 四川省| 东乡| 南和县| 黄骅市| 顺平县| 清河县| 黄平县| 随州市| 苍南县| 浮山县| 凤冈县| 绥阳县| 岳西县| 柏乡县| 惠州市| 肇源县| 永靖县|