QML使用ChartView绘制折线图

一、工程配置

首先修改CMakeLists.txt,按下图修改:

cpp 复制代码
find_package(Qt6 6.4 REQUIRED COMPONENTS Quick Widgets) PRIVATE

target_link_libraries(appuntitled
    PRIVATE Qt6::Quick
    PRIVATE Qt6::Widgets
)

其次修改main.cpp,按下图修改:

cpp 复制代码
#include <QApplication>
QApplication app(argc, argv);

二、ChartView介绍

  • ChartView是QML中用于绘制各种图表的组件,可以通过简单的QML代码快速创建各种类型的图表,如折线图、柱状图、饼图等。ChartView基于Qt Charts模块,提供了丰富的功能和样式选项,使开发者可以定制自己的图表风格。
  • 使用ChartView,开发者可以轻松地绑定数据模型,并通过属性设置来调整图表的外观和交互方式。同时,ChartView还支持动画效果、交互式操作和事件处理,可以让图表更加生动和用户友好。
  • 总的来说,ChartView是一个强大而灵活的工具,帮助开发者快速地实现各种图表需求,并为用户提供更好的数据可视化体验。

三、折线图介绍

  • 折线图是一种常用的统计图表类型,用于显示数据随时间、顺序或其他连续变量的变化趋势。折线图通常以水平轴表示时间或顺序变量,以垂直轴表示数值变量。在折线图中,每个数据点由一个标记点表示,并且这些标记点通过直线段连接起来,形成折线。
  • 折线图通常用于展示数据的趋势、变化和关联性,帮助人们快速了解数据的发展规律。在制作折线图时,数据点的连线形状、颜色和标记点的样式都可以根据需要进行调整,以使图表更具可读性和吸引力。
  • 折线图适用于比较多个数据系列在相同时间或变量下的变化,同时也可以用于分析单个数据系列的趋势变化。在商业、科学研究、金融等领域,折线图广泛应用于数据可视化和决策分析,是一种简洁清晰、易于理解的图表形式。

四、效果展示

五、源码分享

cpp 复制代码
import QtQuick
import QtQuick.Controls
import Qt.labs.qmlmodels
import QtQuick.Controls.Basic
import QtQuick.Layouts
import QtQuick.Effects
import Qt.labs.platform
import QtQuick.VirtualKeyboard
import QtCharts

ApplicationWindow {
    id:root
    width: 1000
    height: 730
    visible: true
    title: qsTr("Hello World")

    ChartView {
        id: chart
        title: "line chart"
        anchors.fill: parent

        LineSeries {
            name: "Line"
            XYPoint { x: 0; y: 0 }
            XYPoint { x: 1.1; y: 2.1 }
            XYPoint { x: 1.9; y: 3.3 }
            XYPoint { x: 2.1; y: 2.1 }
            XYPoint { x: 2.9; y: 4.9 }
            XYPoint { x: 3.4; y: 3.0 }
            XYPoint { x: 4.1; y: 3.3 }
        }
    }

}

六、程序崩溃的解决方法

按第一条工程配置修改自己的工程。

相关推荐
_OP_CHEN4 小时前
【从零开始的Qt开发指南】(十一)Qt常用控件之多元素控件与容器类控件深度解析
开发语言·qt·前端开发·多元素控件·gui开发·qt常用控件·容器类控件
我送炭你添花4 小时前
Pelco KBD300A 模拟器:06.用 PyQt5 实现 1:1 像素级完美复刻 Pelco KBD300A 键盘
python·qt·自动化·运维开发
大道随心4 小时前
【QT】自动化设备控制界面搭建
开发语言·qt·自动化
深蓝海拓5 小时前
PySide6从0开始学习的笔记(六) 控件(Widget)之按钮类
笔记·python·qt·学习·pyqt
深蓝海拓6 小时前
PySide6从0开始学习的笔记(七) 控件(Widget)之文字输入类控件
笔记·python·qt·学习·pyqt
郝学胜-神的一滴6 小时前
使用Qt OpenGL开发俄罗斯方块:从零到一实现经典游戏
c++·qt·程序人生·游戏·设计模式·系统架构·图形渲染
海涛高软6 小时前
Qt菜单项切换主界面
开发语言·qt
水煎包V:YEDIYYDS8887 小时前
QT 在 QML中 嵌入显示qwidget界面显示的两种方式,已在项目中验证
qt·qml·qt开发·qwidget
常乐か8 小时前
拉取FreeCAD项目步骤
qt·freecad·occ
_OP_CHEN8 小时前
【从零开始的Qt开发指南】(十二)Qt 布局管理器终极指南:5 大布局 + 实战案例,搞定所有界面排版需求
开发语言·qt·前端开发·qt控件·布局管理器·gui开发