Vue + SpreadJS 实现高性能数据展示与分析

vue,spreadjs,实现,高性能,数据,展示,分析 · 浏览次数 : 3363

小编点评

**SpreadJS:高性能数据展示与分析** **本文介绍:** SpreadJS是一款纯前端的表格控件,具有高度类Excel操作行为及高性能的数据展示处理性能。本文将介绍如何使用SpreadJS来做数据分析及可视化展示,以及性能体验。 **性能体验** SpreadJS提供多种性能优化方法,包括: * **虚拟化表格:**在数据超过1000条数据记录时,虚拟化表格可以提供流畅的展示。 * **数据透视:**SpreadJS提供多种数据透视方式,例如行内透视、行间透视和分组透视。 * **集算表:**集算表可以根据请求接口返回数据,快速生成结构化视图展示。 **如何使用SpreadJS** 1. **安装库:**在Vue3项目中安装SpreadJS库:``` npm install spreadjs ``` 2. **引入库:**在你的Vue3组件中引入SpreadJS库:```js import SpreadJS from 'spreadjs'; ``` 3. **创建表格:**使用SpreadJS创建一个表格对象:```js const sheet = new SpreadJS.Grid({ // 数据源 data: [ // 数据数据 ], // 配置 columnDefs: [ // 列定义 ], }); ``` **性能测试** 在使用SpreadJS之前,请进行性能测试以确保其性能足以满足需求。您可以使用工具如Chrome DevTools或Firefox Developer Tools来测量表格的渲染时间。 **参考资料** * SpreadJS 官方文档:spreadjs.dev/ * Vue3构建电子表格:vue3-build-table * Vue3集成SpreadJS产品文档:vue3-spreadjs

正文

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

Vue + SpreadJS 实现高性能数据展示与分析

在前端开发领域,表格一直都是一个高频使用的组件,尤其是在中后台和数据分析场景下。但当一屏展示数据超过1000条数据记录时,会出现浏览器卡顿等问题,严重影响客户体验。为解决这些性能问题,不少组件也提出了相关的解决方案,以ElementPlus为例,提出了虚拟化表格的概念来流畅的展示更多的数据,但该功能目前仍在测试中,投入生产环境可能会有一定的风险,因此本文不做更多的介绍,大家有兴趣可以参考虚拟化表格

本文介绍一款纯前端的表格控件SpreadJS,具有高度类Excel操作行为及高性能的数据展示处理性能,在类Excel业务需求实现及大数据展示方面有较好的使用体验。相关的性能体验可以参考:性能演示应用。同时,官方具备大量的学习资料及成熟的技术配套服务,只要掌握基础的前端开发技能,就可以轻松上手SpreadJS。本文以Vue3框架为例,简要介绍如何使用SpreadJS来做数据分析及可视化展示。SpreadJS如何与Vue3框架继承可参考:

Vue3构建电子表格

Vue3集成SpreadJS产品文档

产品集成完成之后,接下来我们一起来了解SpreadJS中关于数据展示及可视化分析的相关功能点。

(1)数据透视表

SpreadJS作为类Excel表格控件,具备与Excel高度一致的功能,而在Excel中,用来做数据分析的一个关键功能就是数据透视表。同理,在SpreadJS中也可以使用透视表来做数据分析。关于透视表的概念,如果不理解可做参考:

创建数据透视表以分析工作表数据

手把手教你玩转 Excel 数据透视表

SpreadJS对透视表提供了UI操作与API,我们可以根据实际需求选择使用UI还是API。UI操作上与Excel操作透视表一致,如下所示,我们可以导入一张包含透视数据源的excel文件,之后基于该数据源,选择行列分析维度,生成目标透视表:

怎么样,是不是操作十分简单,秩序简单几步,就可以将excel的透视表功能迁移到Web端。作为前端控件,SpreadJS也提供了API来支持透视表展示,详细的API说明可参考学习指南-透视表

(2)集算表

集算表是SpreadJS V15.0之后提出的一个新的功能点,该功能可根据请求接口返回数据,快速生成结构化视图展示。支持数据验证,条件格式等常见Excel操作,并且多数据源之间支持连接,类似于数据库表之间的外联关系。集算表UI操作如下:

集算表-自动同步

视频中的所有接口由Postman模拟生成,实际项目中,可根据自己的业务情况填写接口。作为前端控件,SpreadJS不会限制接口返回数据来源,可以来自关系型数据库MySQL,SQL Server,也可以来自Redis、Mongodb等其它非关系型数据库,当然,也可以来自OA,CRM等其它业务系统。

数据到达前端之后,也可对有关联关系的两张表做连接展示分析,具体操作如下所示:

动图中,演示的两张表对应的数据请求接口分别是:

主表: https://demodata.grapecity.com/northwind/api/v1/Orders

客户信息表:https://demodata.grapecity.com/northwind/api/v1/customers

如果想进一步了解集算表API实现,可参考学习指南-集算表。通过字段列关联生成的视图,如果满足透视表数据源要求,可进一步选择插入透视表进一步做汇总,统计等数据分析。

与Vue + SpreadJS 实现高性能数据展示与分析相似的内容:

Vue + SpreadJS 实现高性能数据展示与分析

本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 Vue + SpreadJS 实现高性能数据展示与分析 在前端开发领域,表格一直都是一个高频使用的组件,尤其是在中后台和数据分析场景下。但当一屏展示数据超过1000条数

B2C在线教育商城--前后端分离部署

博客地址:https://www.cnblogs.com/zylyehuo/ 技术栈:vue + nginx + uwsgi + django + mariadb + redis 基本流程 vue打包之后,生成了dist静态文件夹 ,前端的静态文件,都在这里了,静态文件,都是丢给nginx直接去返回

CAS前后端分离解决方案

CAS前后端分离解决方案 关于CSS服务器的搭建和整合SpringBoot参考:CAS5.3服务器搭建与客户端整合SpringBoot以及踩坑笔记 环境与需求 后端:springboot 前端: vue + element UI 在登录后之后登录状态在系统中自主控制。 问题 当接口在CAS过滤器中时

Vue3.0+typescript+Vite+Pinia+Element-plus搭建vue3框架!

使用 Vite 快速搭建脚手架 命令行选项直接指定项目名称和想要使用的模板,Vite + Vue 项目,运行(推荐使用yarn) # npm 6.x npm init vite@latest my-vue-app --template vue # npm 7+, 需要额外的双横线: npm init

02.前后端分离中台框架前端 admin.ui.plus 学习-介绍与简单使用

## 中台框架前台项目 admin.ui.plus 的初识 > 基于 vue3.x + CompositionAPI setup 语法糖 + typescript + vite + element plus + vue-router-next + pinia 技术,内置支持一键生成微服务接口,适配手

1.课程介绍及环境准备

此合集是刘老师教编程的学习笔记,是个值得推荐的up up链接 https://space.bilibili.com/472907970?spm_id_from=333.788.0.0 1.课程介绍及环境准备 SpringBoot + vue 全栈开发基础 开发工具:IDEA+VSCode 后端:ja

跟我一起学习和开发动态表单系统-前端用vue、elementui实现方法(3)

基于 Vue、Element UI 和 Spring Boot + MyBatis 的动态表单系统前端实现解析 在现代企业信息系统中,动态表单是一种非常常见的功能。它可以根据业务需求灵活地调整表单结构,以满足不同的数据收集和展示需求。在本文中,我们将探讨一种基于 Vue、Element UI 和 S

前后端分离实现注册+登录(Vue3.0 + Django3.2)

博客地址:https://www.cnblogs.com/zylyehuo/ 一、使用 vite+webstorm 搭建 Vue 环境,构建前端 1、结构树 2、main.js import { createApp } from 'vue' //import './style.css' import

拖拽宫格vue-grid-layout详细应用及案例

[toc] # 1、前言 vue-grid-layout是一个适用于vue的拖拽栅格布局库,功能齐全,适用于拖拽+高度/宽度自由调节的布局需求。本文将讲述一些常用参数和事件,以及做一个同步拖拽的Demo。效果动态图如下: ![vue-grid-layout](https://img2023.cnbl

Vue3快速上手

好久没上传了,闲来无事把囤积已久的笔记给上传上传 1. Vue3简介 2020年9月18日,Vue.js发布版3.0版本,代号:One Piece(n 经历了:4800+次提交、40+个RFC、600+次PR、300+贡献者 官方发版地址:Release v3.0.0 One Piece · vue