(TODO)大数据量下的关系可视化通用解决方案
流程
确定目的
常见的目的,一般有:找异常、看趋势、看分布、看比例、看关系等。
以Arsenal服务关系可视化为例,其目的是为了找出异常的服务及其异常的原因。
切记:千万不要在一开始就直接去思考细节上的实现,一定要先明确需求方的目的。参考Arsenal关系图被吊着打的例子。
确定关键指标
(宏观)找出异常的服务:服务的状态
(微观)找出服务异常的原因:服务所在容器的具体的数值,比如IO、CPU、内存、网络等
确定数据聚合方案
原则
ZHQ:
对于海量数据可视化
若不做数据精简处理,考虑海量点的散点图绘制,根据不同纬度以点的位置、颜色做属性体现
https://echarts.apache.org/next/examples/zh/editor.html?c=scatter-stream-visual
若做数据精简(业务角度),则拆分为整体加局部的形式,保证单张图的数据量合情合理并帮助用户去除其余的“雾霾”信息,比如查看单个组件相关的产品/单个产品相关的组件。
LSJ:
我觉得每块需要可视化的数据都是有数据特点的,
而且提出可视化的需求方也有自己的想法。
我觉得可以先收集一下需求,
把需求列为组件扩充和页面开发,我们先只负责组件扩充这方面的,页面开发的到时候就可以分配给其他人了。
借此也可以充实一下我们的关系组件库的相关功能
李少杰-可视化搭建
海量点这块我的想法和琦哥差不多
其实就是数据下钻,和地图一样
外层做趋势、分布的展现
下层做数据精细的展示
数据聚合
有分类概念
无分类概念
可以参考高德的海量点展示:
https://lbs.amap.com/api/amap-ui/reference-amap-ui/mass-data/pointsimplifier
2020年初,我们在疫情地图项目中,也用到过类似的算法。
案例
组件依赖关系可视化
https://www.cnblogs.com/chiang28/p/10044010.html
参考资料
(北大可视化实验室)让边绑定更加清晰:网络可视化中融合绘制方式的探索: