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

Qt-chart 画折线图(以时间为x轴)

上图

在这里插入图片描述

代码

#include <iostream>
#include <random>
#include <qcategoryaxis.h>void MainWindow::testLine()
{//1、创建图表视图QChartView* view = new QChartView(this);//2.创建图表QChart* chart = new QChart();//3.将图表设置给图表视图view->setChart(chart);//设置标题chart->setTitle("");chart->legend()->show();//显示或者隐藏图例(默认显示)//4.构建x轴-日期时间轴QDateTimeAxis* axisX = new QDateTimeAxis(this);//设置轴的标题axisX->setTitleText("");//设置时间轴的范围,参数是两个时期时间QDateTimeaxisX->setRange(QDateTime(QDate(2000, 01, 01), QTime(0, 0, 0)),QDateTime(QDate(2000, 01, 10), QTime(0, 0, 0)));//设置刻度个数,刻度数算不好会会导致X轴看起来没有对中一样axisX->setTickCount(10);//设置刻度值的格式,和格式化时间字符串一样axisX->setFormat("MM.dd");axisX->setLabelsAngle(45);//添加轴chart->addAxis(axisX, Qt::AlignBottom);//5.构建y轴-数值轴QValueAxis* axisY = new QValueAxis(this);axisY->setRange(0, 100);axisY->setTickCount(11);axisY->setTitleText("Y");chart->addAxis(axisY, Qt::AlignLeft);//6.构建折线系列QLineSeries* line = new QLineSeries();//设置图例文本line->setName("tar");QLineSeries* line2 = new QLineSeries();//设置图例文本line2->setName("reality");for (int  i = 0; i < 7; i++){QString strDate = QString("%1.%2.%3").arg(2000).arg(1).arg(i + 1);{std::random_device rd;  // 用于获取随机数种子std::mt19937 gen(rd()); // 以 rd() 作为种子的 Mersenne Twister 引擎// 定义一个均匀分布的整数范围 [1, 100]std::uniform_int_distribution<> dis(1, 100);line->append(QDateTime(QDate::fromString(strDate, "yyyy.M.d"), QTime(0, 0, 0)).toMSecsSinceEpoch(), dis(gen));}{std::random_device rd;  // 用于获取随机数种子std::mt19937 gen(rd()); // 以 rd() 作为种子的 Mersenne Twister 引擎// 定义一个均匀分布的整数范围 [1, 100]std::uniform_int_distribution<> dis(1, 100);line2->append(QDateTime(QDate::fromString(strDate, "yyyy.M.d"), QTime(0, 0, 0)).toMSecsSinceEpoch(), dis(gen));}}//显示标签line->setPointLabelsVisible(true);line2->setPointLabelsVisible(true);//显示标签格式line->setPointLabelsFormat("(@yPoint)");line2->setPointLabelsFormat("(@yPoint)");//显示标签裁剪line->setPointLabelsClipping(false);line2->setPointLabelsClipping(false);chart->addSeries(line);chart->addSeries(line2);//7、将xy轴附加到折线line->attachAxis(axisX);line->attachAxis(axisY);line2->attachAxis(axisX);line2->attachAxis(axisY);setCentralWidget(view);
}

相关文章:

Qt-chart 画折线图(以时间为x轴)

上图 代码 #include <iostream> #include <random> #include <qcategoryaxis.h>void MainWindow::testLine() {//1、创建图表视图QChartView* view new QChartView(this);//2.创建图表QChart* chart new QChart();//3.将图表设置给图表视图view->setCh…...

【入门】晶晶的补习班

描述 晶晶上初中了。妈妈认为晶晶应该更加用功学习&#xff0c;所以晶晶除了上学之外&#xff0c;还要参加妈妈为她报名的各科补习班。晶晶的妈妈给了晶晶的下周每天上补习班的小时数&#xff0c;晶晶同学想知道&#xff0c;下周平均一天要上多少小时的补习班&#xff08;结果…...

c#动态更新替换json节点

需求项目json作为主模板&#xff0c;会应用到多个子模版&#xff0c;当后续项目变更只需要修改主模板中节点&#xff0c;并且能够动态更新到原来的子模版中去。 主模板示例&#xff1a; {"A": {"A1": "","A2": false,"A3"…...

cf补题日记

听退役选手建议&#xff0c;补40道C、D题。 &#xff08;又又又开新专题。。。 进度&#xff1a;2/40 原题1&#xff1a; You are given a string ss, consisting of digits from 00 to 99. In one operation, you can pick any digit in this string, except for 00 or the…...

Golang学习笔记_01——包

文章目录 包&#xff08;package&#xff09;1. 定义2. 导入3. 初始化4. 可见性4. 注意4.1 包声明4.2 main包4.3 包的导入4.4标识符的可见性4.5 包的初始化4.6 避免命名冲突4.7 包的路径和名称4.8 匿名导入4.9 使用Go Modules 包&#xff08;package&#xff09; 在Golang&…...

RPC设计--应用层缓冲区,TcpBuffer

为什么需要应用层的buffer 为了方便数据处理&#xff0c;从fd上直接读写然后做包的组装、拆解不够方便方便异步发送&#xff0c;将数据写到应用层buffer后即可返回&#xff0c;让epoll即event_loop去异步发送。提高发送效率&#xff0c;多个小包可合并发送 buffer 设计 可以…...

基于单片机智能控制的饮水机控制系统

基于单片机智能控制的饮水机控制系统&#xff0c;以STC89C52单片机为核心&#xff0c;利用防水型DS18B20温度传感器对饮水机内的水温做出检测&#xff0c;其次利用水位传感器对饮水机内的水量做出检测&#xff0c;并显示在OLED液晶显示屏上。用户在使用饮水机时&#xff0c;通过…...

路径规划 | 改进的人工势场法APF算法进行路径规划(Matlab)

目录 效果一览基本介绍程序设计参考文献 效果一览 基本介绍 改进的人工势场法&#xff08;APF&#xff09;路径规划算法 在路径规划中&#xff0c;人工势场法&#xff08;APF&#xff09;是一种常见的方法&#xff0c;但传统的APF算法容易陷入局部极小值&#xff0c;导致路径规…...

【云原生知识】Kubernets实践-前端服务如何访问后端服务

文章目录 概述步骤1&#xff1a;部署后端服务步骤2&#xff1a;配置Nginx步骤3&#xff1a;创建Nginx服务总结 如何确保 Nginx 能持续访问后端服务&#xff1f;相关文献 概述 假设你正在使用Kubernetes作为容器云平台&#xff0c;以下是如何配置Nginx以及相关服务&#xff0c;…...

【ubuntu18.04】ubuntu18.04安装EasyCwmp操作说明

参考链接 Tutorial – EasyCwmphttps://easycwmp.org/tutorial/ EasyCwmp 介绍 EasyCwmp 设计包括 2 个部分&#xff1a; EasyCwmp 核心&#xff1a;它包括 TR069 CWMP 引擎&#xff0c;负责与 ACS 服务器的通信。它是用 C 语言开发的。EasyCwmp DataModel&#xff1a;它包…...

使用Jackson库的ObjectMapper类将JSON字符串转换为Java的Map对象

本教程展示如何使用Jackson库的ObjectMapper类将JSON字符串转换为Java的Map对象。 下面是具体的步骤和代码示例&#xff0c;包括添加依赖项以及编写用于反序列化JSON字符串为Map的代码。 添加依赖项 首先&#xff0c;在你的项目中添加Jackson库的依赖。如果你使用的是Maven构…...

ASP.NET Core实现鉴权授权的几个库

System.IdentityModel.Tokens.Jwt 和 Microsoft.AspNetCore.Authentication.JwtBearer 是两个常用的库&#xff0c;分别用于处理 JWT&#xff08;JSON Web Token&#xff09;相关的任务。它们在功能上有一定重叠&#xff0c;但侧重点和使用场景有所不同。 1. System.IdentityM…...

MySql:数据类型

✨✨作者主页&#xff1a;嶔某✨✨ ✨✨所属专栏&#xff1a;MySql✨✨ 数据类型分类 分类数据类型说明数值类型BIT(M)位类型&#xff0c;M指定位数&#xff0c;默认值1&#xff0c;范围1~64TINYINT [UNSIGNED]占用一个字节&#xff0c;带符号的范围 -128~127&#xff0c;无符…...

Couchbase的OLAP支持情况

Couchbase 是一个高性能的 NoSQL 数据库&#xff0c;主要用于在线事务处理&#xff08;OLTP&#xff09;场景&#xff0c;但它也提供了一些功能来支持在线分析处理&#xff08;OLAP&#xff09;需求。以下是 Couchbase 对 OLAP 支持的几个方面&#xff1a; 1. N1QL 查询语言 …...

企业级包管理器之搭建 npm 私有服务器 (6)

在企业级应用开发中&#xff0c;常常需要处理私有包的发布和管理。搭建 npm 私有服务器是一个理想的解决方案&#xff0c;它不仅能保证代码的私密性&#xff0c;还能提供更快的下载速度和更精细的权限设置。 一、搭建 npm 私有服务器的优势 保证代码私密性&#xff1a;在企业…...

Elasticsearch的一些介绍

你想问的可能是 **Elasticsearch**&#xff0c;以下是关于它的一些介绍&#xff1a; ### 概述 Elasticsearch是一个基于Apache Lucene库构建的开源分布式搜索和分析引擎&#xff0c;采用Java语言编写&#xff0c;具有高性能、可扩展性和易用性等特点&#xff0c;可用于各种数据…...

音乐网站设计与实现

文末获取源码和万字论文&#xff0c;制作不易&#xff0c;感谢点赞支持。 音乐网站设计与实现 摘 要 本音乐网站是针对目前音乐网站管理的实际需求&#xff0c;从实际工作出发&#xff0c;对过去的音乐网站管理系统存在的问题进行分析&#xff0c;结合计算机系统的结构、概念、…...

UE5 蓝图节点中文化

文章目录 一、问题背景二、解决方法 一、问题背景 在虚幻引擎5.4、5.5版本中&#xff0c;即使将编辑器语言设置为中文&#xff0c;还是会出现大部分蓝图节点没有中文化。 蓝图节点没有中文化图示&#xff1a; 二、解决方法 在左上角找到 编辑&#xff0c;打开 编辑器偏好设置…...

java抽奖系统登录下(四)

6.4 关于登录 最简单的登录&#xff1a; 1、web登录页填写登录信息&#xff0c;前端发送登录信息到后端&#xff1b; 2、后端接受登录信息&#xff0c;并校验。校验成功&#xff0c;返回成功结果。 这种登录会出现一个问题&#xff0c;用户1成功登录之后&#xff0c;获取到后台…...

解决阿里云轻量级服务器 Ubuntu 24.04.1 LTS 没网也 ping 不通 8.8.8.8 以及 route -n 没有输出任何转发信息

事情发生在两天前&#xff0c;位于公网的阿里云轻量级服务器&#xff08;Ubuntu 24.04.1 LTS&#xff09;忽然没网。主要是上次上服务器进行配置已经是一个多月前&#xff0c;最近也没有做什么事情&#xff0c;就忽然没网了&#xff0c;让人纳闷。更主要的是&#xff0c;上次备…...

基于CircuitPython与PyPortal的交互式冒险游戏开发实战

1. 项目概述与核心价值如果你对嵌入式开发感兴趣&#xff0c;但又觉得从点灯、读传感器开始有些枯燥&#xff0c;或者你是一位创客、教育者&#xff0c;想找一个能融合编程、故事创作和硬件交互的趣味项目&#xff0c;那么基于CircuitPython和PyPortal的交互式冒险游戏开发&…...

从零构建MCP服务:AI Agent扩展与外部工具集成实战

1. 项目概述&#xff1a;从零构建你的第一个MCP服务最近在AI应用开发圈里&#xff0c;MCP&#xff08;Model Context Protocol&#xff09;这个词的热度越来越高。简单来说&#xff0c;它就像是为AI大模型&#xff08;比如Claude、GPTs&#xff09;连接外部工具和数据源的一套“…...

【Midjourney光照提示词黄金法则】:20年AI视觉工程师亲授7类光效参数组合,92%新手3天提升质感层级

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;光照提示词在Midjourney中的底层作用机制 光照提示词&#xff08;Lighting Prompts&#xff09;并非简单的修饰性描述&#xff0c;而是直接参与 Midjourney V6 模型的 latent 空间引导与风格解耦的关键…...

Arm Neoverse CMN-650架构与编程实践详解

1. CMN-650架构概述Arm Neoverse CMN-650是一种基于Mesh拓扑的一致性互连网络&#xff0c;专为多核处理器和加速器系统设计。作为SoC内部的数据高速公路&#xff0c;它通过优化的路由算法和一致性协议&#xff0c;实现了高带宽、低延迟的核间通信。1.1 核心组件解析CMN-650由多…...

DeepSeek LDAP同步延迟从15分钟压缩至800ms:基于增量Sync+Change Notification机制的深度调优实录

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;DeepSeek LDAP集成方案 DeepSeek 模型服务在企业级部署中常需与现有身份认证体系对接&#xff0c;LDAP&#xff08;Lightweight Directory Access Protocol&#xff09;作为主流目录服务协议&#xff0…...

开源机械爪应用宝库:从视觉分拣到项目实战全解析

1. 项目概述&#xff1a;一个开源“机械爪”用例的灵感宝库如果你对机器人、自动化或者开源硬件感兴趣&#xff0c;最近在GitHub上闲逛时&#xff0c;可能刷到过一个叫hesamsheikh/awesome-openclaw-usecases的仓库。光看名字&#xff0c;就能猜个八九不离十&#xff1a;这是一…...

热门的牙齿矫正正畸李杨哪个好

在社交媒体上&#xff0c;关于“牙齿矫正哪家好”、“李杨医生靠谱吗”的讨论热度居高不下。许多粉丝在评论区留言&#xff0c;想知道这位在网络红人榜上经常出现的正畸专家&#xff0c;是否真的值得托付那长达一两年的矫正周期。作为一个长期关注口腔健康领域的观察者&#xf…...

开源音频标注工具audamo:从部署到实战的全流程指南

1. 项目概述&#xff1a;一个为音频数据标注而生的开源工具如果你正在处理语音识别、音频事件检测或者任何需要大量标注音频数据的项目&#xff0c;那么“标注”这个环节大概率是你工作流中最耗时、也最令人头疼的部分。手动用Audacity一帧一帧地听、标记&#xff0c;效率低下不…...

Play Integrity API Checker:5分钟快速掌握Android设备安全检测终极指南

Play Integrity API Checker&#xff1a;5分钟快速掌握Android设备安全检测终极指南 【免费下载链接】play-integrity-checker-app Get info about your Device Integrity through the Play Intergrity API 项目地址: https://gitcode.com/gh_mirrors/pl/play-integrity-chec…...

小红书二面:Function Calling 的可靠性怎么保证?

1. 题目分析 Function Calling 大概是 LLM 应用开发中最拧巴的一个环节——你让一个概率模型去做一件需要百分之百精确的事。模型生成的自然语言可以有措辞差异、可以有风格变化&#xff0c;用户多半不会在意&#xff0c;但一个工具调用的参数少了一个字段、日期格式从 YYYY-M…...