数据可视化大屏酷炫秘籍之前端开发者自己动手

数据可视化大屏酷炫秘籍之前端开发者自己动手

数据可视化大屏的酷炫效果相信大家都已经见识到了经常是这样的:

或者是这样的

又或者是这样的

如此酷炫的大屏效果,要想完全复原首先离不开以下步骤:

  1. 设计师精确到像素的设计稿
  2. 有了图纸稿原型,那就需要动效了,没有动效的可视化大屏,等于没有灵魂,那么动效可能交给美工或设计师人员帮我们制作一些GIF动画,或者小视频用于展示。
  3. 但是需要将数据与模拟场景绑定,比如模拟机房,模拟3D零件,不仅需要展示动效和图形效果,还需要绑定实际的业务数据,那么这一步就得我们前端开发自己动手了。

相信大家都曾为Echarts的图表或地图开发者模式给打动过,如果能够把这些动效直接为我们所用,展示到可视化大屏中,升职加薪不是梦,领导夸赞不绝口。

那我们接下来就以 Wyn 商业智能可视化大屏设计工具为示例,演示如何进行插件开发,将喜欢的效果引入到可视化大屏中,接下来为大家介绍插件开发中的一些基础功能,以及demo示例。

Demo下载地址:

https://gcdn.grapecity.com.cn...

一、visual.json 文件介绍

name:插件名称

externalJs:需要引入的外部js,可以通过{{参数名}}获取配置中的参数

Configuration:扩展参数

配置字段内容获取

二、webpack.config.js

设置外部引用包里面的js对象名称,可以在 visual.ts 文件中引用

外部扩展js插件引用方式:

三、package.json

Version:设置插件版本号

四、assets

可以在里面定义一些图片资源,使用时返回base64文件,用资源图片时,需要在visual.json 中定义名称映射

获取图片内容:

五、capabilities.json 属性设置,数据字段配置

1.dataBinding 数据绑定

(1)dataRoles

name: 属性名称

displayNameKey: 显示名称

kind:

grouping:用于度量字段的分类或分组。

value:数值数据。

groupingOrValue:可用作度量也可以用作分组。

options:format 格式化,displayUnit 数据单位,enum 自定义下拉框,(使用方式后面详细介绍)

(2)dataViewMappings,conditions

设置数据绑定的最大,最小数量。

conditions 组合条件,{},{}属于或者关系,下面示例中可以理解为:

① numeric 没有绑定字段,category 绑定数量无限制。

② numeric 若绑定数据,则category 最多只能绑定一个字段。

2.options->visual 组件属性设置(使用方式后面详细介绍)

开启数据联动,只有开启数据联动后,才可以实现组件之间数据联动

设置后显示内容:

3.actions 设置组件按钮,详细介绍请参考

https://help.grapecity.com.cn...

六、visual.ts 文件

1.IVisualUpdateOption 属性对象

isViewer:表示在预览仪表板时是否呈现该组件。

isMobile::表示是否在移动端显示该组件。

isEditing:表示组件的编辑状态。当触发了编辑操作时,值为true。

isFocus: 表示组件的聚焦状态。当触发了聚焦操作时,值为true。

dataViews: 在capabilities.json中定义的计算数据视图(dataViewMapping)。

properties: 在 capabilities.json 中定义的属性模型(options.visual)。

docTheme: 选择的文档主题。

language: 当前语言。

scale: 比例因子。

filters: 用来影响其他组件。

2.获取属性设置内容

3.组件排序,此代码完成排序功能

4.数据联动,点击实现仪表板数据互动

(1)设置字段

(2)获取联动item合集

此功能调试代码查看

5.联动钻取,跳转

参考代码:bindEvents() 方法

6.数据格式化

参考方法:formatData

7.自定义设置

具体参考 number\_formatting 方法

8.按钮显示隐藏

到这里我们的项目就整体介绍完毕,下面为大家准备了更多拓展阅读,感兴趣的小伙伴不要错过。

拓展阅读

BI如何实现用户身份集成自定义安全程序开发

BI如何配置“花生壳”,看这一篇就够了

【三维地图】开发攻略 —— 详解“GeoJSON”技术和应用场景


葡萄城技术团队
葡萄城技术团队,分享技术文章。

葡萄城创建于1980年,是全球领先的软件开发技术和低代码平台提供商。以“赋能开发者”为使命,葡萄城致力...

2.5k 声望
20.7k 粉丝
0 条评论
推荐阅读
商业智能 (BI) 对企业中每个员工的 5 大好处
众所周知,商业智能 (BI) 是探索企业数据价值的强大工具,能够帮助企业做出明智的决策、提高绩效并获得竞争优势。但BI 工具与企业中的个体有什么关联,又能带来哪些好处呢?为什么说商业智能BI工具对公司中的每个...

葡萄城技术团队

涨姿势了,有意思的气泡 Loading 效果
今日,群友提问,如何实现这么一个 Loading 效果:这个确实有点意思,但是这是 CSS 能够完成的?没错,这个效果中的核心气泡效果,其实借助 CSS 中的滤镜,能够比较轻松的实现,就是所需的元素可能多点。参考我们...

chokcoco19阅读 2k评论 2

在前端使用 JS 进行分类汇总
最近遇到一些同学在问 JS 中进行数据统计的问题。虽然数据统计一般会在数据库中进行,但是后端遇到需要使用程序来进行统计的情况也非常多。.NET 就为了对内存数据和数据库数据进行统一地数据处理,发明了 LINQ (L...

边城17阅读 1.9k

封面图
你可能不需要JS!CSS实现一个计时器
CSS现在可不仅仅只是改一个颜色这么简单,还可以做很多交互,比如做一个功能齐全的计时器?样式上并不复杂,主要是几个交互的地方数字时钟的变化开始、暂停操作重置操作如何仅使用 CSS 来实现这样的功能呢?一起...

XboxYan20阅读 1.5k评论 1

封面图
「彻底弄懂」this全面解析
当一个函数被调用时,会创建一个活动记录(有时候也称为执行上下文)。这个记录会包含函数在 哪里被调用(调用栈)、函数的调用方法、传入的参数等信息。this就是记录的其中一个属性,会在 函数执行的过程中用到...

wuwhs17阅读 2.4k

封面图
学会这些 Web API 使你的开发效率翻倍
随着浏览器的日益壮大,浏览器自带的功能也随着增多,在 Web 开发过程中,我们经常会使用一些 Web API 增加我们的开发效率。本篇文章主要选取了一些有趣且有用的 Web API 进行介绍,并且 API 可以在线运行预览。C...

九旬13阅读 1.5k

封面图
用了那么久的 SVG,你还没有入门吗?
其实在大部分的项目中都有 直接 或 间接 使用到 SVG 和 Canvas,但是在大多数时候我们只是选择 简单了解 或 直接跳过,这有问题吗?没有问题,毕竟砖还是要搬的!

熊的猫16阅读 1.5k评论 2

封面图

葡萄城创建于1980年,是全球领先的软件开发技术和低代码平台提供商。以“赋能开发者”为使命,葡萄城致力...

2.5k 声望
20.7k 粉丝
宣传栏