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

打造炫酷效果:用Java优雅地制作Excel迷你图

摘要:本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。

前言

迷你图是一种简洁而有效的数据可视化方式,常用于展示趋势和变化。它通常由一组小型的线条或柱状图组成,用于表示数据的变化情况。迷你图的主要特点是占用空间少且易于理解。

迷你图通常被用于数据仪表盘、报告和展示中,以便在有限的空间内展示多个数据集的趋势。通过迷你图,使用者可以快速地分析数据的变化趋势,发现关键信息。今天小编为大家介绍如何在Java中创建Excel迷你图。

1.在Java中创建迷你图

Excel的迷你图一共有三种:

  • 折线图
  • 柱形图
  • 盈亏图

通过下面的代码,可以轻松创建出三种迷你图。

Workbook wb = new Workbook();IWorksheet sheet = wb.getActiveSheet();// 定义数据Object[][] data = new Object[][]{{1, -3, 2},{4, -6, 5},{7, -9, 8},{10, 12, -11}};sheet.getRange("A1:C4").setValue(data);// 添加迷你图sheet.getRange("D1:D4").getSparklineGroups().add(SparkType.Line, "A1:C4");sheet.getRange("E1:E4").getSparklineGroups().add(SparkType.Column, "A1:C4");sheet.getRange("F1:F4").getSparklineGroups().add(SparkType.ColumnStacked100, "A1:C4");wb.save("output/sparkline.xlsx");

实现效果如下图所示:

2.在Java中创建迷你图组合

在 Excel 中,创建多个迷你图时,会自动为他们添加一个组合,同一个组合的迷你图会使用相同的设置(如:线型)。当选择一个迷你图时,Excel会把相同组合的迷你图用蓝框同时选中。

而在Java中也提供了对应的 API 可以对已有的迷你图重新创建组合,也可以通过组合来修改迷你图的配置。

(1)对已有的迷你图添加组合

// 创建workbook,并获取当前sheetWorkbook wb = new Workbook();IWorksheet sheet = wb.getActiveSheet();// 定义数据区域Object[][] data = new Object[][]{{ 1, 2, 3 },{ 4, 5, 6 },{ 7, 8, 9 },{ 10, 11, 12 }};sheet.getRange("A1:C4").setValue(data);sheet.getRange("D1:D4").getSparklineGroups().add(SparkType.Line, "A1:C4");sheet.getRange("F1:H4").setValue(data);// 添加一组新的迷你图sheet.getRange("J1:J4").getSparklineGroups().add(SparkType.Column, "F1:H4");// 基于区域"J2"的迷你图设置,创建一个新的组合sheet.getRange("A1:J4").getSparklineGroups().group(sheet.getRange("J2"));wb.save("output/sparkline.xlsx");

实现效果如下图所示,可以看到因为新创建了组合,D1:D4的折线迷你图,变成了柱形迷你图。

(2)修改组合的配置和迷你图样式

// 创建workbook,并获取当前sheetWorkbook wb = new Workbook();IWorksheet sheet = wb.getActiveSheet();// 定义数据区域Object[][] data = new Object[][]{{ 1, 2, 3 },{ 4, 5, 6 },{ 7, 8, 9 },{ 10, 11, 12 }};sheet.getRange("A1:C4").setValue(data);// 添加迷你图sheet.getRange("D1:D4").getSparklineGroups().add(SparkType.Line, "A1:C4");// 定义日期数据Object[] date_data = new Object[]{new GregorianCalendar(2011, 11, 16),new GregorianCalendar(2011, 11, 17),new GregorianCalendar(2011, 11, 18)};sheet.getRange("A7:C7").setValue(date_data);// 修改迷你图的配置ISparklineGroup sparklinegroup = sheet.getRange("D1").getSparklineGroups().get(0);sparklinegroup.setLineWeight(2.5);sparklinegroup.getPoints().getMarkers().getColor().setColor(Color.GetRed());sparklinegroup.getPoints().getMarkers().setVisible(true);sparklinegroup.getSeriesColor().setColor(Color.GetPurple());wb.save("output/sparkline.xlsx");

实现效果如下图所示:

总结

以上就是关于迷你图用法的介绍。如果您想进一步了解有关迷你图更多的玩法和技巧,可以参考这个帮助手册,在手册中包含了有关于迷你图更多的用法,无论是初学者还是有经验的专业人士,该帮助手册都将为您提供有价值的指导和帮助。

扩展链接:

从表单驱动到模型驱动,解读低代码开发平台的发展趋势

低代码开发平台是什么?

基于分支的版本管理,帮助低代码从项目交付走向定制化产品开发

相关文章:

打造炫酷效果:用Java优雅地制作Excel迷你图

摘要:本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前言 迷你图是一种简洁而有效的数据可视化方式,常用于展示趋势和变化。它通常由一…...

pycharm设置pyuic和pyrcc

pyuic设置 适合任何虚拟环境,直接用虚拟环境的python解决一切。。。 E:\anaconda3\envs\qt5\python.exe-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py$FileDir$pyrcc设置 E:\anaconda3\envs\qt5\python.exe-m PyQt5.pyrcc_main $FileName$ -o…...

OpenCV6-图形绘制

OpenCV6-图形绘制 1.绘制圆形2.绘制直线3.绘制椭圆4.绘制多边形5.文字生成6.demo 1.绘制圆形 void cv::circle(InputOutputArray img, // 需要绘制圆形的图像Point center, // 圆心坐标int radius, // 半径,单位为像素const Scalar& colo…...

kafka消费者程序日志报错Offset commit failed问题研究

生产环境偶尔会遇到kafka消费者程序日志报错的问题 截取主要日志如下: 2023-10-02 19:35:28.554 {trace: d7f97f70dd693e3d} ERROR[Thread-49:137] ConsumerCoordinator$OffsetCommitResponseHandler.handle(812) - [Consumer clientIdconsumer-1, groupIdcid_yin…...

SpringBoot+原生HTML+MySQL开发的电子病历系统源码

电子病历系统源码 电子病历编辑器源码 云端SaaS服务 电子病历系统,采用 “所见即所得、一体化方式”,协助医生和护士准确、标准、快捷实现病历书写、修改、审阅、打印、体温单浏览、医嘱管理等,是提供病历快速简洁化完成的一系列综合型医生病…...

软件测试/测试开发/人工智能丨聊聊AutoGPT那些事儿

点此获取更多相关资料 简介 在 ChatGPT 问世之后,大家很容易就发现其依然具备一些很难解决的问题,比如: Token 超出限制怎么办?(目前最新的 GPT4 支持最多8,192 tokens)。如何完全自动化?任务…...

KdMapper扩展实现之SOKNO S.R.L(speedfan.sys)

1.背景 KdMapper是一个利用intel的驱动漏洞可以无痕的加载未经签名的驱动,本文是利用其它漏洞(参考《【转载】利用签名驱动漏洞加载未签名驱动》)做相应的修改以实现类似功能。需要大家对KdMapper的代码有一定了解。 2.驱动信息 驱动名称spee…...

MATLAB算法实战应用案例精讲-【图像处理】计算机视觉

目录 前言 几个高频面试题目 计算机视觉与图像处理、模式识别、机器学习学科之间的关系 计算机视觉和机器人视觉区别与联系...

docker应用的缓存 docker缓存机制

Docker镜像用作Docker执行程序中的主映像。它们是容器的蓝图,提供了有关如何生成容器的说明。在本文中,我将介绍一些经常被忽视的概念,这些概念将有助于优化Docker镜像开发和构建过程。 让我们从Docker构建过程的简短描述开始。这是通过使用…...

借助 ZooKeeper 生成唯一 UUID

ZooKeeper是一个分布式协调服务,它主要用于在分布式系统中管理和协调各种资源。它本身并不提供生成唯一UUID的功能,但你可以借助ZooKeeper来实现生成唯一UUID的机制。 下面是一种基于ZooKeeper的方法来生成唯一UUID的示例: 在ZooKeeper中创建…...

Redis哨兵机制原理

Redis哨兵机制可以保证Redis服务的高可用性。它通过启动一个或多个哨兵进程,监控Redis主服务器是否宕机,如果宕机,哨兵进程会自动将一个从服务器(Slave)升级为主服务器(Master),并通…...

Maven Web应用

目录 创建 Web 应用 构建 Web 应用 部署 Web 应用 测试 Web 应用 本章节我们将学习如何使用版本控制系统 Maven 来管理一个基于 web 的项目,如何创建、构建、部署以及运行一个 web 应用。 创建 Web 应用 我们可以使用 maven-archetype-webapp 插件来创建一个简…...

考古:MFC界面的自适应缩放(代码示例)

MFC窗体的控件的自适应缩放早期VS开发环境是不支持的,后来VS开发环境提供了支持但也简单,或者固定的缩放比例不符合要求。我一向坚持一个理念:“不支持缩放的窗口不是好窗口”,所以需要有一个自定义的缩放处理。机制不复杂&#x…...

计算机网络 | 物理层

计算机网络 | 物理层 计算机网络 | 物理层基本概念数据通信基本知识(一)一个数据通信流程的例子数据通信相关术语三种通信方式数据传输方式串行传输和并行传输同步传输和异步传输 小结 数据通信基本知识(二)码元(Symbo…...

Centos下编译ffmpeg动态库

文章目录 一、下载ffmpeg安装包二、编译ffmpeg三、安装yasm 一、下载ffmpeg安装包 下载包 wget http://www.ffmpeg.org/releases/ffmpeg-4.4.tar.gz解压 tar -zxvf ffmpeg-4.4.tar.gz二、编译ffmpeg 进入解压的目录 cd ffmpeg-4.4编译动态库 ./configure --enable-shared…...

深度学习:UserWarning: The parameter ‘pretrained‘ is deprecated since 0.13..解决办法

深度学习:UserWarning: The parameter ‘pretrained’ is deprecated since 0.13 and may be removed in the future, please use ‘weights’ instead. 解决办法 1 报错警告: pytorch版本:0.14.1 在利用pytorch中的预训练模型时&#xff0…...

leetcode-279. 完全平方数

1. 题目链接 链接: 题目链接 2. 解答 #include <stdio.h> #include <stdlib.h> #include <stdbool.h>bool issquare(int n) {if (n 1 || n 4) return true;if (n 2 || n 3) return false;for (int i 3; i < n/2; i ) {if (n i*i) return true;}…...

MySQL常用指令

创建新的数据库 1、创建新的数据库 create database YOLO;显示本地创建的数据库 2、显示本地创建的数据库 show databases;进入新创建的数据库 3、进入新创建的数据库 use YOLO;在新创建的数据库内添加表&#xff08;表内插入内容&#xff09; 4、创建表并添加表内容 creat…...

Pulsar 之架构,客户端以及多区域容灾

Pulsar 之架构&#xff0c;客户端以及多区域容灾 架构BrokersClusters元数据存储配置存储区持久存储Apache BookKeeperLedgersLedgers读一致性托管Ledgers 日志存储 Pulsar 代理服务发现 Pulsar client(客户端)客户端设置阶段Reader interface 多区域容灾备份(GEO-REPLICATION)…...

【SQL】MySQL中的索引,索引优化

索引是存储引擎用来快速查询记录的一种数据结构&#xff0c;按实现方式主要分为Hash索引和B树索引。 按功能划分&#xff0c;主要有以下几类 单列索引指的是对某一列单独建立索引&#xff0c;一张表中可以有多个单列索引 1. 单列索引 - 普通索引 创建索引&#xff08;关键字i…...

wlnmp一键安装包260520更新:多软件版本升级,支持多系统架构快速部署

wlnmp一键安装包更新&#xff1a;多软件版本升级wlnmp一键安装包在260520迎来更新&#xff0c;此次更新涉及多个重要软件的版本升级&#xff0c;包括nginx1.30.1、php8.2.31、php8.3.31等多个php版本&#xff0c;以及MySQL8.0.46、MySQL8.4.9。这些软件版本的更新&#xff0c;为…...

通过 curl 命令快速测试 Taotoken 大模型接口连通性

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过 curl 命令快速测试 Taotoken 大模型接口连通性 在接入大模型服务时&#xff0c;直接使用 curl 命令进行接口测试是一种高效且…...

3步永久激活Windows和Office:开源智能脚本的完整指南

3步永久激活Windows和Office&#xff1a;开源智能脚本的完整指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为电脑屏幕上频繁弹出的"需要激活"提示而烦恼吗&#xff1f;Offi…...

从插值到积分:用np.interp和np.trapz,5步完成传感器数据平滑与能量估算(Python实战)

从插值到积分&#xff1a;用np.interp和np.trapz&#xff0c;5步完成传感器数据平滑与能量估算&#xff08;Python实战&#xff09; 在物联网和实验数据处理中&#xff0c;我们常常会遇到传感器采集的数据点稀疏或不均匀的问题。这种原始数据直接用于分析往往会导致结果不准确&…...

国产电池包传感监测芯片:从AFE设计到BMS系统实战解析

1. 项目概述&#xff1a;从“芯”守护&#xff0c;让每一度电都安全在电动汽车的心脏——动力电池包里&#xff0c;温度、电压、电流这些关键参数哪怕出现一丝一毫的异常&#xff0c;都可能从量变引发质变&#xff0c;最终导致热失控等严重安全事故。因此&#xff0c;对电池包内…...

过拟合和欠拟合

模型容量可以视作模型的复杂度。如果数据比较简单&#xff0c;却选择了模型容量高的&#xff08;复杂模型&#xff09;&#xff0c;可能会出现过拟合&#xff08;underfitting&#xff09;如果数据比较复杂&#xff0c;却选择类简单模型&#xff0c;可能会出现欠拟合&#xff0…...

Linux内核hrtimer高精度定时器深度解析与驱动开发实战

1. 项目概述与核心价值在Linux内核驱动开发中&#xff0c;定时器是一个再基础不过的组件。从早期的timer_list到如今的高精度定时器hrtimer&#xff0c;内核为我们提供了越来越精细的时间控制能力。今天&#xff0c;我们不谈那些老生常谈的基础用法&#xff0c;而是深入内核源码…...

VAP特效动画创作指南:3步打造跨平台炫酷视觉特效

VAP特效动画创作指南&#xff1a;3步打造跨平台炫酷视觉特效 【免费下载链接】vap VAP是企鹅电竞开发&#xff0c;用于播放特效动画的实现方案。具有高压缩率、硬件解码等优点。同时支持 iOS,Android,Web 平台。 项目地址: https://gitcode.com/gh_mirrors/va/vap 还在为…...

遥感图像处理实战:用Python+OpenCV实现同态滤波与小波变换去薄云(附完整代码与效果对比)

遥感图像去云实战&#xff1a;Python实现同态滤波与小波变换的深度对比 薄云覆盖是遥感图像处理中的常见挑战&#xff0c;它会降低图像对比度、模糊地物细节&#xff0c;直接影响后续的地物分类和环境监测精度。本文将带您用Python实现两种经典的去云算法——同态滤波与小波变换…...

RELION 5.0完整指南:从零开始掌握冷冻电镜数据处理利器

RELION 5.0完整指南&#xff1a;从零开始掌握冷冻电镜数据处理利器 【免费下载链接】relion Image-processing software for cryo-electron microscopy 项目地址: https://gitcode.com/gh_mirrors/re/relion RELION 5.0&#xff08;REgularised LIkelihood OptimisatioN…...