QCustomPlot使用技巧

2023-11-07

QCustomPlot使用技巧(一)

一、QCustomPlot坐标轴

一个QCustomPlot里有四个坐标轴,其中xAxis、yAxis、xAxis2和yAxis2分别表示如图所示的4个方向的坐标轴,xAxis2和yAxis2默认隐藏,可以通过语句显示出来。

 yAxis2->setVisible(true);    //显示y轴2   即右侧坐标轴
 xAxis2->setVisible(true);    //显示x轴2   即上方坐标轴

在这里插入图片描述
下面是坐标轴的常用操作,每一个坐标轴都可单独设置。

	xAxis->setBasePen(QPen(QColor(0, 163, 222)));                        		//x轴线
    xAxis->setLabelColor(Qt::black);                                            //设置字体
    xAxis->grid()->setPen(QPen(QColor("#159C77"), 1, Qt::DotLine));            	//x中间的水平线
    xAxis->setTickLabelColor(Qt::black);                                        //x标号
    xAxis->setTickPen(QPen(QColor("#159C77")));                            		//x大分割
    xAxis->setLabel(QStringLiteral("时间"));									//文字
    xAxis->setSubTickPen(QPen(QColor("#159C77")));                        		//x小分割
    xAxis->setSubTickLength(0);
    xAxis->setSubTicks(false);													//x小分割不显示
    xAxis->setTickLabelFont(QFont("", 10));
    xAxis->setRange(QCPRange(0, 50));                                           //x轴范围
    xAxis->ticker()->setTickCount(50);											//x轴有多少个点
    xAxis->ticker()->setTickStepStrategy(QCPAxisTicker::tssReadability);
    xAxis->setUpperEnding(QCPLineEnding::esSpikeArrow);
    xAxis->rescale(true);														//设置自动缩放

如果需要设置x轴为时间显示

//x轴时间设置
QDateTime date_time = QDateTime::currentDateTime();
double now = date_time.toMSecsSinceEpoch();
QSharedPointer<QCPAxisTickerDateTime> dateTimeTicker(new QCPAxisTickerDateTime);//dateTimeTicker->setDateTimeSpec(Qt::UTC);//设施世界时间,即不加上时区的时间
dateTimeTicker->setTickCount(20);
dateTimeTicker->setTickStepStrategy(QCPAxisTicker::tssMeetTickCount);
dateTimeTicker->setDateTimeFormat("d h:m");//设置x轴刻度显示格式
ui.plot_->xAxis->setTicker(dateTimeTicker);
ui.plot_->xAxis->setRange((now - 3600)*0.001, now*0.001);
ui.plot_->xAxis->setTickLabelRotation(30);

二、QCPGraph对象

QCustomPlot中的每一个曲线是一个QCPGraph对象,凡是跟显示数据有关的我们就对QCPGraph进行操作或调用QCPGraph对象提供的方法。可以使用该语句创建一个QCPGraph对象

QCPGraph *graph = ui.plot_->addGraph();

创建的的QCPGraph会存储在QCustomPlot内,使用graph(i)及和返回。

ui.plot_->graph(i)

下面是QCPGraph的常用设置

setLineStyle(LineStyle ls);			//设置线条
setData(x,y);									//添加数据
setData(const QVector<double> &keys, const QVector<double> &values, bool alreadySorted=false);//添加数据容器
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QCustomPlot使用技巧 的相关文章

  • Linux静态库与动态库

    Linux动态库与静态库 前言 Linux动态库与静态库介绍 静态库与动态库的优缺点 代码说明 静态库演示 静态库的命名规则 静态库的制作步骤 静态库的使用 动态库演示 动态库的命名规则 动态库的制作步骤 动态库的使用 静态库与动态库的使用
  • 怎么用Wireshark抓包QQ的到对方的IP地址

    怎么用Wireshark抓包QQ的到对方的IP地址 通过wireshark抓包工具得到对方的IP 一 wireshark Wireshark 前称Ethereal 是一个网络封包分析软件 网络封包分析软件的功能是撷取网络封包 并尽可能显示出
  • matlab 画图

    转 matlab 画图plot 标记符大小调整和填充 2014 01 15 21 00 23 转载 标签 it 分类 Matlab 原文地址 http xiangyan0212 blog 163 com blog static 207037
  • ajax代码复用,可重用的JS ajax模式(jquery)

    我想知道是否有更好的方法来为jquery创建可重用的ajax对象 这是我未经测试的代码 var sender function ajax url type dataType callback ajax url url type type d
  • 【计算机视觉40例】案例22:目标检测(YOLO方法、SSD方法)

    导读 本文是专栏 计算机视觉40例简介 的第22个案例 目标检测 YOLO方法 SSD方法 该专栏简要介绍李立宗主编 计算机视觉40例 从入门到深度学习 OpenCV Python 一书的40个案例 目前 该书已经在电子工业出版社出版 大家
  • 21天Jenkins打卡Day10-自动触发项目构建

    参考文档 http istester com jenkins 437 html
  • 【atlas】atlas 编译报错整理(全)

    前言 最近在编译 apache altas 1 1版本 在编译过程中遇到很多报错 这里整理并记录一下 问题一 org restlet jee 包找不到 问题原因 Maven主仓库中找不到包的解决办法 如org restlet jee not
  • Linux 管道pipeline

    管道符 tar归档目录 gzip压缩 ssh传输并用cat读取标准输入到文件 tar cf kernel linux 6 4 7 gzip ssh user 192 168 123 144 cat gt destination tar gz
  • PyQt学习笔记:使用QtWidgets.qApp实现在程序中随时访问应用的方法

    PyQt学习笔记 使用QtWidgets qApp实现在程序中随时访问应用的方法 在PyQt中 QtWidgets qApp是一个全局变量 它提供了一种在程序中随时访问应用的方法 通过使用qApp 我们可以轻松地获取到应用的实例 并且可以使

随机推荐

  • 模式识别——特征提取(表达)

    特征表达 特征是机器学习系统的原材料 对最终模型的影响是毋庸置疑的 如果数据被很好地表达成了特征 通常线性模型就能达到满意的精度 关于特征 需要考虑以下三方面 1 特征表示的粒度 需要考虑 模型在一个什么程度上的特征表示 才能发挥效果 以图
  • tomcat堆栈中10大常见线程详解

    Tomcat作为一个服务器来讲 必然运行着很多的线程 而每一个线程究竟是干什么的 这个需要非常的清楚 无论是打印断点 还是通过jstack进行线程栈分析 这都是必须要掌握的技能 本文带你基于Tomcat7 8 9的版本 识别Tomcat堆栈
  • Cool! TineEye 图片逆向搜索

    Tineye 是世界上第一个逆向图片搜索引擎 可以根据你提交的图片在Internet找到类似图片 下面是Tineye网站上的一些搜索例子 很神奇吧 Cool Searches click image to search This page
  • 爱心代码(web前端)陈飞宇李峋同款

    文章目录 前言 一 效果图 二 操作步骤 第一步 第二步 第三步 第四步 第五步 第六步 源码 前言 最近随着电视剧 点燃我温暖你 的火热播出 剧中帅气学霸李洵的炫酷爱心代码也迅速火出了圈 爱心素材也异常火爆 我在这里整理了一份大家有需自取
  • 使用YOLOv5检测大宽高比(细长目标)时无法检测问题的解决方法

    在深度学习的工程中总会遇到许许多多的奇奇怪怪的问题 使人头大 上周五Franpper在使用yolov5 5 0训练时就遇到了这么一个奇怪的问题 在训练过程中labels一直为0 表示没有读进去标签 虽然可以训练 但是是无效训练 因为网络也不
  • 【硬件】对电源模块的梳理(包括DC-DC、LDO等不同芯片应用电路)

    目录 1 DC DC 变换器 ME3116 24V转5V JW5017S 18V转5V CX802 输入电压 4 5 80V 输出电压5V 输出电流1 2A LM2596S ADJ 输入电压3 3 40V 输出电压5V 2 LDO 低压差
  • java中网络编程UDP在线咨询案例(DatagramSocket)

    方法1 单线程 单方向发送接收 发送端 UdpTalkClient java 步骤流程 1 使用DatagramSocket 指定端口 创建发送端 2 准备数据一定转成字节数组 3 封装DatagramSocket包裹 需要指定目的地 4
  • java流程控制语句

    一 顺序结构 顺序结构 按照代码的顺序 自上而下执行 二 选择结构 A if语句 格式 a if 关系表达式 语句体 详细情况 if 关系表达式 如果关系表达式的结果是true 执行大括号中的语句 如果关系表达式的结果是false 就跳过不
  • 北航计算机学院编译技术,北航编译技术在线作业一二三

    北航编译技术在线作业一二三 由会员分享 可在线阅读 更多相关 北航编译技术在线作业一二三 16页珍藏版 请在人人文库网上搜索 1 北航编译技术在线作业一一 单选题 共 14 道试题 共 56 分 1 LR 1 文法都是 C A 无二义性且无
  • CentOS修改默认的root账号名称

    最近云服务器老是提示被爆破 为了安全起见 设置了一下hosts deny 另外还更改了默认的root账号名称 这里记录root账号修改过程 1 修改密码文件中的用户名 vi etc passwd 第一行第一个root字符修改成你想要的用户名
  • 深度学习 多分类roc曲线的绘制

    对于多分类问题 ROC曲线的获取主要有两种方法 假设测试样本个数为m 类别个数为n 在训练完成后 计算出每个测试样本的在各类别下的概率或置信度 得到一个 m n 形状的矩阵P 每一行表示一个测试样本在各类别下概率值 按类别标签排序 相应地
  • 微信企业号接收消息并自动响应

    花了2天时间做了企业号接收消息功能测试 微信官方的文档给了我很大的帮助 但是恰恰卡时间最长的 也是官方文档上的一段有误导性的说明 带我细细道来 首先把微信发送信息到企业号服务器 然后企业号自动响应的过程图示下 网上找的 感觉描述的很好 这里
  • 照片也能跳舞?仅需3秒,这个AI神器让你的照片变3D动画……

    上面的动画好玩么 他原本可不是动画 而是下面这张照片一键生成的 神不神奇 今天介绍的这个工具可以轻松实现这个效果 这个工具叫做LeiaPix Converter 可以帮助用户轻松将普通照片转换为具有运动效果的3D图片 这对于那些想要给照片添
  • 神经网络模型量化

    量化模型 Quantized Model 是一种模型加速 Model Acceleration 方法的总称 包括二值化网络 Binary Network 三值化网络 Ternary Network 深度压缩 Deep Compression
  • 【Java8】Guava——Function

    函数式编程 函数式编程是一种历久弥新的编程范式 比起命令式编程 它更加关注程序的执行结果而不是执行过程 Java 始终是一个面向对象 命令式 的语言 在我们使用函数式编程这种黑魔法之前 需要确认 同样的功能 使用函数式编程来实现 能否在健壮
  • 聊一聊5G定位技术

    从2G到4G 蜂窝网络的定位技术主要有 E CID AoA ToA TDOA等 从2G到4G 蜂窝网络的定位技术主要有 E CID AoA ToA TDOA等 E CID 传统基站分为三个扇区 一个扇区对应一个小区 每扇区通常120度 每个
  • 最优控制(泛函)

    1 一般的泛函就是把函数作为元素来研究的一门学科 泛函分析 举个简单一点的列子 我们以前学的函数是把数字作为基本的元素来研究的 现在更高一个层次 就是元素就是一个函数 比如全体实系数连续函数构成一个集合A 那么这个A中每一个元素就是一个函数
  • MATLAB try catch的使用

    try end try end用于尝试运行一段也许可能出错的代码 try 尝试执行的语句 end 如果E运行出错 跳过并从这里开始运行 try catch end 当程序碰到 a m n 错误后 就会跳转到catch里面的语句 继续执行 有
  • k8s新建pod一直执行creating 的解决方法

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 参考书籍 kubernetes权威指南第二版 相关内容 确保kubernete集群搭建成功 1 创建一个myweb rc yaml apiVersion v1 kind R
  • QCustomPlot使用技巧

    QCustomPlot使用技巧 一 一 QCustomPlot坐标轴 一个QCustomPlot里有四个坐标轴 其中xAxis yAxis xAxis2和yAxis2分别表示如图所示的4个方向的坐标轴 xAxis2和yAxis2默认隐藏 可