可视化大屏开发系列——开始

可视化大屏数据展示是前端研发内容中的一个重要部分,通过图形图表可以直观展现一些关键的数据指标和数据变化趋势,辅助管理层了解业务状况,及时有效地做出更明智的决策。最近,因工作需要对数据可视化大屏方面研究了一番,特此记录。如有错误之处,欢迎指出!

写在前面,最近开始在微信公众号上更文啦,可搜索“兰兰的风吖”,查看文章,后续学习整理的知识文章会同步更新,欢迎关注!
在这里插入图片描述

本文知识导图如下:

在这里插入图片描述

案例页面

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

分析以上三张大屏页面,开发难点主要在于:

  • 页面布局(针对整个页面和每个模块如何实现内容宽高的自适应);
  • 数据可视化图表库的选择

作为开发人员,数据可视化图表库的选择众多,如echarts、ucharts、highcharts、chart.js、d3.js等都是流行的JavaScript图表库,掌握图表库里的各种图表类型和样式配置可以满足多样的用户需求。

各类图表库的简单介绍

(1)echarts

开源免费,众所周知,一个基于JavaScript的开源可视化图表库,配置稍显复杂,支持用户交互和高度个性化定制,在复杂的可视化和大数据量方面有较高的性能。上学习链接:echarts官网,底层依赖矢量图形库ZRender(Canvas类库)。超多示例,咱后续慢慢学习解锁。
在这里插入图片描述

推荐俩关于echarts的社区网站,可供参考学习。
①https://www.makeapie.cn/echarts
②https://echarts.zhangmuchen.top/#/index

(2)ucharts

开源免费,一款基于canvas API开发的适用于所有前端应用的图表库。上学习链接: ucharts官网
看着官网,好像还不错,我还没用过,后续有机会试用下。
在这里插入图片描述
在这里插入图片描述

(3)chart.js

开源免费,简单易用的图表库之一。上学习链接:官网配置简单,图表精美,看这页面设计就深得我心,推荐研究学习。底层依赖HTML5 Canvas。
在这里插入图片描述

(4)highcharts

也是一款HTML5交互性图表库,商业化的highcharts图表支持导出pdf文件(😄我这奇怪的关注点),上学习链接:官网。后续可以研究下。
在这里插入图片描述

(5)d3.js

图形工具库,比上面这些图表库更底层,更灵活,容易定制。同时要求学习者懂的知识更多,学习曲线会比较陡峭。看知乎上的网友讲,在下面几种情况下,强烈推荐学习:

  • 现有的图表库无法满足展示需求时
  • 图表发烧友,想要随心所欲地设计、实现各种各样的酷炫图表,一定要学习

哈哈,没事的话,可以研究下,就不上学习链接了。

言归正传,到底选择哪一款图表库来呈现数据,还是取决于开发者对每一款图表库的使用掌握程度和具体的项目业务功能需求。
就个人理解,常规的图表适用业务情况如下:

  • 饼图:业务数据占比,如某公司人员的学历分布
  • 柱图:多(一)种维度下多组业务数据对比,如三种产品的进货量和销售量
  • 折线图:一段时间日期下,某个或某组业务数据变化趋势,如最近一周内一(多)种产品的销售量

其余的图表个人使用较少,暂且不表。

(6)DataV

回到本文开始,技术上要想实现这三张大屏页面,除echarts外,还使用了一个专门用来做大屏数据展示的组件库DataV。站在开发者的角度,配置简单,上手成本低,尤其是提供了一些边框、装饰、图表等,用其做出来的大屏页面确实美观,在用户体验方面非常不错。 此组件库开源免费,上个学习链接:DataV官网,强烈推荐学习研究。
在这里插入图片描述
在这里插入图片描述
此外,将矢量图(放大不失真特性)运用到大屏中,也能增强用户体验。

有了以上对可视化大屏的一些基础技术了解,就可以选取一款符合业务数据展示需求且自己心仪的图表库,开始大屏的研发了哦。对于本文出现的三张大屏页面,我在技术实现上采用的是echarts+DataV,后面我会逐步分享具体如何实现,一起期待趴~

最近更新

  1. TCP协议是安全的吗?

    2024-06-15 23:22:05       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-15 23:22:05       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-15 23:22:05       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-15 23:22:05       18 阅读

热门阅读

  1. Linux 用户权限 管理员与普通用户区别 sudo命令

    2024-06-15 23:22:05       8 阅读
  2. CSS3 2D变换、3D变换、过渡、动画

    2024-06-15 23:22:05       5 阅读
  3. Docker镜像构建:Ubuntu18.04+python3.10

    2024-06-15 23:22:05       9 阅读
  4. 解释 RESTful API, 如何使用它构建 web 应用程序

    2024-06-15 23:22:05       7 阅读
  5. Day39

    2024-06-15 23:22:05       4 阅读
  6. C++封装dll lib

    2024-06-15 23:22:05       11 阅读
  7. 技术周总结2024.06.10~06.16

    2024-06-15 23:22:05       7 阅读
  8. 【LVGL v8.3】切换界面时内存变化分析

    2024-06-15 23:22:05       7 阅读
  9. 支持向量机(SVM)中核函数的本质意义

    2024-06-15 23:22:05       6 阅读