当前位置: 首页 > news >正文

QCustomPlot实现曲线拖拽

本文内容目录

    • 需求场景:
    • 一、选择控件
    • 二、将QCustomPlot库整合到你的Qt项目中
        • 1、下载源代码
        • 2、创建.pri
    • 三、鼠标框选,实现坐标缩放
    • 四、曲线拖动
        • 1、定位曲线
        • 2、移动时改变曲线
    • 五、问题的产生与解决
        • 1、查看源码
        • 2、修改本项目代码

需求场景:

曲线图应该同时具有以下功能点:
1、在画布上进行鼠标框选,实现坐标缩放。
2、可以上下拖动某曲线。

在这里插入图片描述

一、选择控件

这里选择QCustomPlot,是一个C++绘图库,可以创建各种类型的绘图,包括散点图、曲线图、直方图、颜色地图、轮廓图等,可以跨平台使用。

以下是QCustomPlot的官方文档:
QCustomPlot官方网站
https://www.qcustomplot.com/

二、将QCustomPlot库整合到你的Qt项目中

1、下载源代码

在这里插入图片描述

2、创建.pri

.pri文件的内容添加如下:

HEADERS += \
    $$PWD/qcustomplot.h

SOURCES += \
    $$PWD/qcustomplot.cpp

将.pri文件,.cpp文件,.h文件放到同一个文件夹下,示例项目为PlotTest。:
在这里插入图片描述
并在项目配置文件.pro文件中添加语句:

include(CustomPlot/CustomPlot.pri)

重新构建后,可以看到qcustomplot库已经整合到项目中:
在这里插入图片描述

三、鼠标框选,实现坐标缩放

实现代码:

mCustomPlot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom | QCP::iSelectPlottables);
mCustomPlot->setSelectionRectMode(QCP::

相关文章:

  • 浅谈大数据之Flink
  • python:从Excel或者CSV中读取因变量与多个自变量,用于训练机器学习回归模型,并输出预测结果
  • 管理系统搭建一般步骤(会话跟踪 路由导航守卫 响应拦截器)
  • NoVNC(Client)+TigerVNC(Server)搭建流程
  • 上位机在自动化中有何作用和优势?
  • Adobe发布Firefly 2,提升图像质量和用户体验
  • Android---Android 是如何通过 Activity 进行交互的
  • 使用解构赋值简化axios返回对象属性元素的提取
  • root赋权
  • nodejs+vue水浒鉴赏平台系统
  • linux下文件存储系统(inode/目录项/硬链接)
  • MySQLJDBC入门与SQL注入
  • 至强服务器BIOS/UEFI驱动开发笔记
  • 【MySQL】表的查询与连接
  • C# 图解教程 第5版 —— 第5章 类的基本概念
  • 智能油烟机 优化烹饪体验
  • python树状打印项目路径
  • spark读取hive表字段,区分大小写问题
  • 【计算机网络笔记】分组交换 vs 电路交换
  • 数据库事务及事务隔离级别
  • 特朗普政府拟终止太空污染研究,马斯克旗下太空公司将受益
  • 上交现场配乐4K修复版《神女》:默片巅峰有了新的打开方式
  • 普京:“胜利日停火”已开始生效
  • 纪念|“补白大王”郑逸梅,从藏扇看其眼光品味
  • 《黎明的一切》:与正常世界脱轨后,我选择不再回去
  • 国产基因测序仪龙头华大智造业绩持续承压,今年有望迎来拐点?