Echarts + 低代码 :可视化如何赋能企业的创新之路?

news/2024/11/15 12:10:15/文章来源:https://www.cnblogs.com/powertoolsteam/p/18315729

前言

数据驱动已经成为企业决策和业务优化的关键所在,在数字化时代,高效的数据分析与可视化呈现是实现智能决策的关键。利用低代码开发平台,企业可以快速构建满足业务需求的应用系统,实现对各类数据源的便捷接入。结合 Echarts 等可视化工具,复杂的数据信息能够以直观、富交互性的图表形式展现出来,帮助决策者更好地理解和洞察数据蕴含的价值。近年来,低代码开发平台和 Echarts 可视化工具的高速发展和有效融合,大幅缩短了从数据获取到数据驱动决策的周期,大大提升了分析效果和决策质量。

  1. 低代码技术带来更高的系统交付效率
    随着数字化转型的推进,企业和组织对软件开发的需求越来越迫切。然而,传统的软件开发过程通常耗时、耗力,需要专业的编程知识和技能。低代码技术的出现,改变了软件系统的开发模式,带来更好的生产力。低代码开发平台能够提供可视化的界面和拖拽式的操作,使得非专业开发人员也能够快速构建应用程序,大大缩短开发周期和降低开发成本。

  2. Echarts 可视化库带来更优的呈现效果和更便捷的交互

Echarts 是一款非常优秀的开源数据可视化库,具有强大的可定制性和丰富的图表类型,它支持折线图、柱状体、饼图、雷达图等 20 多种常见的图表类型,能够与地图进行无缝结合来展示地理空间数据。除此之外, Echarts 提供了丰富的 API 接口,方便开发者根据自己的需求进行定制和扩展。

  1. 低代码与 Echarts 融合应用,高效释放数据价值

低代码开发平台与 Echarts 的有机融合,能够为系统构建和应用带来全新的创新机遇。灵活多变的低代码平台,为用户提供了构建定制化应用系统的能力。通过简单的拖拽和配置,用户无需编写大量的底层代码,就能轻松地实现数据处理、分析等业务逻辑,极大地缩短了应用开发周期,提升了开发效率。而强大的Echarts可视化库,则为低代码应用赋予了出色的数据展示功能。丰富的图表类型、灵活配置,以及强大的交互性,使得复杂的数据信息能够以直观、生动的方式呈现给用户。而这些价值,适用于数字化应用的各个场景中,企业可以利用智能可视化来监控业务指标、分析销售数据、优化供应链等,帮助决策者更好地把握市场动向和业务状况。在金融领域,智能可视化可以用于风险管理、交易分析等方面。而在物联网、医疗健康等领域,智能可视化也能提供实时监控和预警功能,帮助用户及时做出反应。

Echarts 特性

  1. 丰富的图表类型:ECharts 提供了广泛的图表类型,包括但不限于折线图、柱状图、饼图、散点图、雷达图、K线图、盒形图、热力图、地图、关系图、Treemap、旭日图、平行坐标系、漏斗图、仪表盘等,几乎覆盖了所有常见的数据可视化需求。
  2. 动态数据驱动:ECharts 支持数据驱动的图表更新,这意味着当数据发生变化时,图表能够自动适应并实时更新,无需手动干预,这对于实时监控系统和动态数据分析尤其有用。
  3. 跨平台兼容性:ECharts 兼容大多数现代浏览器,包括但不限于 IE 8 /9 /10 /11 、Chrome、Firefox、Safari 等,并且能够在 PC 和移动设备上流畅运行,确保了在不同设备和平台上的良好表现。
  4. 高度可定制:通过详细的配置选项,用户可以自定义图表的颜色、样式、标签、提示信息、动画效果等,以满足多样化的视觉需求和品牌风格。
  5. 交互性:ECharts 支持多种鼠标和触摸事件,如点击、缩放、拖拽等,增强用户体验,使用户能够更深入地探索和分析数据。
  6. 地理数据可视化:ECharts 特别擅长地理数据的可视化,提供了地图图表类型,支持世界地图、中国地图以及其他国家地区的地图绘制,以及热力图、线图等地理信息展示方式。
  7. API 和文档支持:ECharts 提供了详尽的 API 文档和示例,帮助开发者快速上手和深入应用。
  8. 开源和免费商用:ECharts 遵循 Apache-2.0 开源协议,这意味着它不仅可以免费用于个人项目,也支持商业用途,无需担心版权问题。

综上所述,ECharts 是一个强大且灵活的工具,适合于各种数据可视化场景,无论是网页前端开发、数据分析展示还是企业级商业智能应用。

环境准备

  • 活字格设计器
  • 活字格服务管理器
  • 活字格 Echarts 插件

操作步骤

在活字格中,提供了专门针对Echarts图表对接的插件工具,下载地址:Echarts图表。

设计器在线安装

打开活字格设计器,点击设计器上方菜单栏-文件,选择【插件管理】,可以搜索插件,搜索到Echarts插件,点击右侧安装即可。

这样,插件就安装完成了。

离线下载安装

先打开葡萄城市场官方网站,同样搜索 Echarts ,即可搜索到 Echarts 图表插件。

点击下载后,会下载一个 zip 包文件,来到设计器,点击安装本地插件,选择下载的插件即可安装。

Echarts 图表插件使用

基础使用

首先做一个简单示例。我们可以任意选择设计器上的一片区域,选择【Echarts图表】。

选择后,我们可以看到右侧菜单栏-单元格设置:

我们可以点击【Echarts 设置】左侧是代码区域,右侧是预览效果,可以看到代码的数据来源于数组,预览的效果便是右侧的折线图效果。

以上的效果只是基本操作,接下来就为大家介绍在活字格中的高级用法及API。

高级使用

活字格提供的API方法如下:

ForguncyEchartsHelper
splitDataSource(objList, option)
groupBy(objList, groupByOption)
toDataSet(objList)
getAttachment(attachment, index)
Forguncy.Helper.SpecialPath
getUploadImageFolderPathInServer()
getFileDownloadUrl(fileName)

接下来我们一个一个接口来进行说明。

splitDataSource & groupBy

我们以堆叠面积图来说明,如果我们的数据来源于活字格中的数据表数据,那么就需要用到splitDataSource这个方法。

首先,我们需要在Echarts上设置数据表数据源,数据绑定选择【数据源】。

接着我们来到Echarts设置,我们想要将数据表数据设置给堆叠面积图的数据,那么只需要下面代码,即可从刚刚设置的数据源中取到数据:

const { 日期, 数值, 类型 } = ForguncyEchartsHelper.splitDataSource(Context.data, {unique: { 日期: true, 类型: true },formatter: { 日期: (date) => date + '' }
});
需要注意的是:代码中取得data,名称需要和设置数据源名称时保持一致,即设置的是data,那么代码中就需要使用data。

我们可以在控制台打印下拿到的数据,可以看到是一个对象数组,里面存储是数据表中的数据:

当然,如果我们的Echarts图表需要的数据并不需要数据表中的所有数据,仅需要根据某一列的分组数据,那么就可以使用groupBy这个API。

const res = ForguncyEchartsHelper.groupBy(Context.data, { key: '类型', formatter: v => v.数值 });

比如,我们可以取数据源数据中“类型”这一列的所有数值:

可以看到,API帮助我们将对象数组转换为了数组对象,我们使用数组对象给到Echarts,数据就可以看到效果了。

toDataSet

熟悉Echarts的小伙伴应该了解,Echarts 支持 DataSet 类型的数据,也就是数据集,方便在多种场景下使用,了解dataset。

const source = ForguncyEchartsHelper.toDataSet(Context.data);

那么,同样的,在活字格中我们也提供了直接将数据源数据转换为dataset的方法,如下:

可以看到,我们可以直接使用这个dataset方法就可以将数据源数据转换为dataset数据类型,然后将dataset给Echarts就可以了。

getAttachment

数据的获取想必大家已经了解了,那么在活字格中,我们会将一些附件存储在数据表中,那么在 Echarts 中我们也是可以获取到这些附件并在图表中展示的。

const data = await ForguncyEchartsHelper.getAttachment(Context.json.find(v=>v.文本==='budget').附件).then(res=>res.json());

可以看到,我们使用此API将附件中的图片取了出来,并在图表中进行展示使用。

getFileDownloadUrl

这个 API 和上面获取附件的用法类似,比如我们在 Echarts 图表中需要获取上传文件的下载链接,那么可以使用此API。

这里获取的是右侧图表的底层图片,用于图表的显示效果。

ImageContext

最后,活字格设计器也是可以直接上传图片资源的,如下图:

那么,在 Echarts 中同样提供了获取这里图片的方法:

const svg = await fetch(ImageContext.flight).then(res => res.text());

首先,我们需要在 Echarts 设置——图片数据源这里配置选择图片资源中的图片:

然后在 Echarts 中选择使用就可以了。

完整工程文件的 Demo Gitee链接:

https://gitee.com/GrapeCity/hzg_echarts_plug

总结

低代码开发平台与 Echarts 可视化库的融合为智能可视化带来了全新的机遇和挑战。这种融合不仅简化了应用开发的过程,降低了技术门槛,还提供了强大的数据可视化能力,帮助用户更好地理解和分析数据。随着技术的不断演进,低代码与 Echarts 的融合将引领智能可视化领域的创新浪潮,为企业和组织提供更高效、智能的数据分析和决策支持。

此外,葡萄城的低代码开发平台活字格不仅具备强大的可视化开发能力,还集成了 BI 分析能力。当面临复杂的 BI 分析与可视化需求时,可以通过借助葡萄城的嵌入式 BI 工具 Wyn 商业智能软件来解决。通过将 Wyn 商业智能软件嵌入到活字格搭建的系统中,实现低代码开发与嵌入式 BI 分析的一体化解决方案,满足面临复杂 BI 系统开发的需求。这种一体化解决方案将提供更全面、综合的功能,帮助用户更好地处理复杂的数据分析和可视化需求。

扩展链接:

专业开发者也在用低代码?揭秘活字格最受程序员喜爱的三大功能

低代码开发平台是什么?

活字格 4.0 新功能机密解析(四):工作流功能详解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/791437.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RAG知识库之知识库图谱应用

上篇文章介绍了使用大模型构建生成知识图谱,其实也可不用大模型用其他方式构建生成知识图谱,但RAG要结合知识图谱使用关键还是怎么把图谱的内容查询出来;简单来说可以先查出Chunk集在关联查出每个Chunk所关联的实体Entity再查询出实体之间的的关系集;这里说的RAG结合知识图…

快速开店新策略:新手如何利用API接口开启电商之旅

随着电子商务的蓬勃发展,越来越多的新手卖家希望建立自己的在线商店。但是,对于没有技术背景的新手来说,如何快速、高效地开设网店是一个挑战。幸运的是,API接口提供了一种解决方案,可以帮助您轻松实现网店的搭建和管理。本文将向您展示如何利用API接口快速开设网店。 一、…

省钱的开源项目「GitHub 热点速览」

本期,我从上周的热门开源项目中挑选了 5 个既省钱又省事,还好玩的开源项目。 首先,推荐的是省钱的电动汽车智能充电管理平台 evcc,它可以根据分时电价智能安排电动车充电时间,从而降低电费,如果你家还有太阳能充电和储能设备,evcc 更能最大限度地利用电能,让你的充电成…

新手入门 | 搭建 AI 模型开发环境

目录安装显卡驱动和开发库对于 Tesla 系列显卡对于 N 卡安装 CUDA 和 cuDNN安装 Miniconda安装 PyTorch 和 Transformers使用 Modelscope 下载加载模型PyCharm 项目配置模型加载和对话CPU 和 GPU 问题transformers 版本错误TORCH_USE_CUDA_DSA 错误 学习模型开发时,搭建环境可…

数据库中查询含有某个emoji表情的行数据

数据库中查询含有某个emoji表情的行数据MySQL的情况 代码如下​ create table tt6(id int, name varchar(800)); insert into tt6 select 1, 121😊33; insert into tt6 select 2, ddd; insert into tt6 select 3, 3669Ef; ​ ​ select * from tt6同样,name字段包含了各种字…

24.9.2——小学期开发实记

1.IDEA导入项目出现Error: java: 程序包javax.servlet.http不存在错误的解决办法 解决方法:打开File>Project Structure>Libraries,点击右侧加号,寻找到tomcat的lib文件夹。 2.IDEA控制台乱码问题对象的知识: 在 Java 中,使用 new 关键字创建对象时:堆内存分配: 首…

读软件开发安全之道:概念、设计与实施16安全开发最佳实践

安全开发最佳实践1. 安全测试的最佳实践 1.1. 编写可靠的安全测试用例是提升任何代码库安全性的重要方式 1.2. “测试驱动的开发”(Test Driven Development,TDD)1.2.1. 在编写新代码的同时编写测试用例1.3. 利用集成测试1.3.1. 集成测试(integration testing)可以把系统置于它…

C#|.net core 基础 - 如何判断连续子序列

想判断一个集合是不是另一个集合的连续子序列,你能想到什么方法?序列化字符串后再比较和滑动窗口那个更靠谱?前两天同事遇到了一个小需求,想判断一个集合是不是在另一个集合中存在,并且要求顺序一致,然后一起讨论了下应该怎么做,有没有什么比较好的方式?下面分享一下我…

全网最适合入门的面向对象编程教程:44 Python内置函数与魔法方法-重写内置类型的魔法方法

在 Python 中,内置类型的行为是通过一组特殊的“魔法方法”来实现的,这些魔法方法以双下划线开头和结尾,比如 init 和 str,你可以通过重写这些魔法方法来定制或扩展内置类型的行为。全网最适合入门的面向对象编程教程:44 Python 内置函数与魔法方法-重写内置类型的魔法方法…

软件工程课程第一次个人作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/SE2024这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/SE2024/homework/13243这个作业的目标 开始初步学习软件工程,掌握学习的基础和必备条件,为后续学习做准备学号 1022011401.Markdown编辑器2.个人logo…

Python 环境配置(三)安装pytorch

Python 环境配置(三)安装pytorch 一、CUDA 安装CUDA视安装的Pytorch版本而定,GPU版本 需要 安装CUDA,CPU版本 无需 安装CUDA。 1、查看驱动版本 方法一:方法二:2、下载 CUDA Toolkit Archive | NVIDIA Developer选择对应的版本,对应的!!!此后依次选择下载即可注意 wi…