簡述
Qt Charts模塊提供了一套易於使用的圖表組件。它采用了Qt Graphics View框架,因此圖表可以很容易地集成到現代的用戶界面。 Qt Charts可以被用作QWidgets、QGraphicsWidget、或QML類型。用戶可以方便地通過選擇圖表主題之一來創建令人印象深刻的圖表。
入門指南
如果要導入Qt Charts QML類型,在你的.qml文件中添加下面的導入語句:
import QtCharts 2.0
如果你打算在應用程序中使用Qt Charts C++類,使用下面的include和using語句:
#include <QtCharts>
using namespace QtCharts;
注意:從Qt Creator 3.0以后,使用Qt Quick Application向導創建的項目,基於Qt Quick 2模板,默認使用QGuiApplication。項目中所有此類QGuiApplication實例必須更換為QApplication,模塊依賴於Graphics View Framework的渲染。
要鏈接到Qt Charts模塊,需要在qmake項目文件中添加:
QT += charts
參考資料
- Qt Charts C++ Classes
- Qt Charts QML Types
示例
Qt Charts提供了下面的示例:
示例 | 描述 |
---|---|
AreaChart Example | 這個示例展示了如何創建一個簡單的面積圖。 |
Audio Example | 這個示例展示了動態數據的圖形(麥克風輸入)。 |
BarChart Example | 這個示例展示了如何創建一個柱狀圖。 |
BarModelMapper Example | 這個示例展示了如何使用QAbstractItemModel派生model作為柱狀系列的數據。 |
Box and Whiskers Example | 這個示例展示了如何創建一個盒須(box-and-whiskers)圖。 |
Callout Example | 這個示例展示了如何在圖表上繪制一個額外的元素(callout)。 |
Chart Themes Example | 這個示例展示了不同的內置主題的外觀和感覺。 |
Custom Chart Example | 這個示例展示了如何定制圖表上不同元素的外觀。 |
DateTimeAxis Example | 這個示例展示了如何利用QDateTimeAxis使用QLineChart。 |
Donut Chart Breakdown Example | 這個示例展示了如何使用使用QPieSeries API創建一個圓環分解圖。 |
Donutchart Example | 這個示例展示了如何創建一個簡單的圓環圖,並對其中一片進行定制。 |
Dynamic Spline Example | 這個示例展示了如何繪制動態數據。 |
HorizontalBarChart Example | 這個示例展示了如何創建一個水平柱狀圖。 |
HorizontalPercentBarChart Example | 這個示例展示了如何創建一個簡單的水平百分比柱狀圖。 |
HorizontalStackedBarChart Example | 這個示例展示了如何創建一個簡單的堆疊(stacked)水平條形圖。 |
Legend Example | 這個示例展示了如何分離圖例以及如何附加回去。 |
LegendMarkers Example | 這個示例展示了如何利用圖例標記。 |
Line and BarChart Example | 這個示例展示了如何結合不同的圖表以及設置軸線。 |
LineChart Example | 這個示例展示了如何創建一個簡單的折線圖。 |
Logarithmic Axis Example | 這個示例展示了如何使用QLogValueAxis。 |
Model Data Example | 這個示例展示了如何使用QAbstractItemModel派生模型作為series的數據。 |
Multiple Axes Example | 這個示例展示了如何創建一個有兩個垂直軸的簡單圖表,每個series一個。 |
Nested Donuts Example | 這個示例展示了如何使用QPieSeries API創建一個嵌套的圓環圖。 |
OpenGL Accelerated Series Example | 這個示例展示了如何啟用OpenGL加速QLineSeries和QScatterSeries。 |
PercentBarChart Example | 這個示例展示了如何創建一個簡單的百分比柱狀圖。 |
Pie Chart Customization Example | 這個示例展示如何定制餅圖的外觀和感覺。 |
Piechart Drilldown Example | 這個示例展示了如何實現一個有drilldown效果的餅狀圖。 |
Piechart Example | 這個示例展示了如何創建一個簡單的餅狀圖和並且定制一些餅片。 |
Polar Chart Example | 這個示例展示了如何用多個不同的series創建一個簡單的極坐標圖。 |
Qml Axes | 這個示例展示了如何在你的QML應用程序使用軸線。 |
Qml Charts Example | 這個示例展示了如何通過使用使用qml使用不同的圖表類型。 |
Qml Custom Legend | 這個示例展示了如何創建自定義的圖例。 |
Qml Customizations | 這個示例展示了如何定制一個ChartView和series的不同視覺屬性。 |
Qml F1 Legends | 這個示例展示了如何使用XmlListModel作為一個圖表的數據源。 |
Qml Oscilloscope | 這個示例展示了如何使用Qt Charts QML API來實現嚴格性能要求的應用程序。 |
Qml Polar Chart | 這個示例展示了如何使用一個極坐標圖在你的QML應用程序中。 |
Qml Weather | 這個示例展示了如何使用不同的圖表類型通過使用qml。 |
Scatter Interactions Example | 這個示例展示了如何創建一個簡單的散布圖和交互圖以及如何與之交互。 |
ScatterChart Example | 這個示例展示了如何創建一個簡單的散布圖。 |
SplineChart Example | 這個示例展示了如何創建一個簡單的曲線圖。 |
StackedBarChart Drilldown Example | 這個示例展示了如何使用一個stacked柱狀圖來實現drilldown。 |
StackedBarChart Example | 這個示例展示了如何創建一個簡單的stacked柱狀圖。 |
Temperature Records Example | 這個示例展示了如何創建一個帶有負圖的柱狀圖。 |
Zoom Line Example | 這個示例展示了如何創建你自己的自定義縮放效果。 |
安裝配置
Qt5.7中已經集成了Qt Charts模塊,關於Qt的安裝配置,請參考:
安裝過程中,新添加的一些模塊(例如:Qt Charts)默認不被安裝,可以根據需要自行勾選:
注意:如果需要使用Qt Charts,請勾選上此模塊,否則后期無法使用。
使用
打開Creator,選擇:【歡迎】->【示例】,輸入“charts”相關的關鍵字:
選擇其中一個示例運行,效果如下:
效果棒棒噠,看起來不比QWT、QCustomPlot等其他圖形庫遜色,而且支持QML。。。