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

折线图多数据处理

前言:

skline1有年份和新申请单位数,skline2有年份和有效期内单位数,我想要把1和2的年份放在一起从小到大放,没有重复的,新申请单位数和有效期内单位数和年份的排列顺序一致

实现:

// 获取原始数据
List<Map<String, Object>> skLine1 = bmzgConfidentQualifyManageService.getSkLine1();
List<Map<String, Object>> skLine2 = bmzgConfidentQualifyManageService.getSkLine2();// 转换为年份->数据的Map便于查询
Map<String, String> yearToCount1 = skLine1.stream().collect(Collectors.toMap(map -> map.get("年份").toString(),map -> map.get("新申请单位数").toString()));Map<String, String> yearToCount2 = skLine2.stream().collect(Collectors.toMap(map -> map.get("年份").toString(),map -> map.get("有效期内单位数").toString()));// 合并年份并排序
Set<String> mergedYears = Stream.concat(skLine1.stream().map(map -> map.get("年份").toString()),skLine2.stream().map(map -> map.get("年份").toString())).collect(Collectors.toCollection(TreeSet::new)); // 自动排序去重// 构建最终结果
List<String> sortedYears = new ArrayList<>(mergedYears);
List<String> newApplications = new ArrayList<>();
List<String> validUnits = new ArrayList<>();for (String year : sortedYears) {newApplications.add(yearToCount1.getOrDefault(year, "0")); // 没有数据默认为0validUnits.add(yearToCount2.getOrDefault(year, "0"));
}// 最终合并结果
Map<String, Object> result = new HashMap<>();
result.put("xData", sortedYears);      // 排序后的年份列表
result.put("yData1", newApplications); // 对应年份的新申请单位数
result.put("yData2", validUnits);      // 对应年份的有效期内单位数

图片:

http://www.dtcms.com/a/264111.html

相关文章:

  • redux基本概念介绍 与 更新方式
  • 【网工|知识升华版|理论】ARQ机制|CSMA/CD协议
  • NetSuite 中如何在已关账期间内Unapply Customer Payment?
  • 数据结构day6——内核链表
  • 手机屏色斑缺陷修复及相关液晶线路激光修复原理
  • 一文讲清楚React合成事件机制和this的绑定问题
  • Pycharm命令行能运行,但绿色三角报错?
  • 51单片机制作万年历
  • java web2(黑马)
  • [Python] -基础篇7-新手常见Python语法错误及解决方案
  • 论文阅读:BLIPv1 2022.2
  • Java 大视界 -- Java 大数据在智能交通共享单车智能调度与停放管理中的应用(329)
  • 基于Pandas和FineBI的昆明职位数据分析与可视化实现(四)- 职位数据可视化(FineBI)
  • 解决leetcode第3597题分割字符串
  • 【一起来学AI大模型】模型上下文协议(MCP)详解:背景、架构与应用
  • 从0开始学习R语言--Day35--核密度动态估计
  • Node.js-path模块
  • 12【进程间通信——管道】
  • 记本好书:矩阵力量:线性代数全彩图解+微课+Python编程
  • 【Go-策略模式】告别if/else hell,拥抱 Go 语言策略模式
  • js基础知识
  • 【组合数学】P11362 [NOIP2024] 遗失的赋值|普及+
  • 事务隔离级别深度解析:机制、语法与实战指
  • 力扣74 搜索二维矩阵
  • [密码学实战]深入解析ASN.1和DER编码:以数字签名值为例(三十一)
  • UniApp完全支持快应用QUICKAPP-以及如何采用 Uni 模式开发发行快应用优雅草卓伊凡
  • 从 Copilot 到 通用 Agent : 大厂在 AI Coding 上的应用和挑战
  • 华为云开始了“开发者空间 AI Agent 开发”活动
  • Anthropic 开源 LLM“电路追踪器”:首次可视化语言模型的“推理路径”!
  • SQLite与MySQL:嵌入式与客户端-服务器数据库的权衡