02 · 技术栈方案对比

2 阅读4分钟

1. 三档技术路线

┌──────────────────────────────────────────────────────────────┐
│  A. 完全自研(框架 + 图表库 + 配置体系自己拼)                  │
│     成本最高,灵活度最高。适合长期演进、强定制。               │
├──────────────────────────────────────────────────────────────┤
│  B. 框架 + 图表库(Vue/React + ECharts/AntV)✅ 主流           │
│     工程师友好,生态厚,性价比最高。                           │
├──────────────────────────────────────────────────────────────┤
│  C. 低代码大屏平台(DataV、百度 Sugar、观远、有数、帆软等)     │
│     运营/产品自助拖拽,开发量最少;定制天花板低。              │
└──────────────────────────────────────────────────────────────┘

2. A. 完全自研

适用:超大量同类大屏(>50 个)、强品牌视觉、要求把图表库改源码。

构成:

  • 渲染层:Canvas 2D / WebGL(PIXI.js、Three.js)/ SVG。
  • 图表层:自封装基础图元(柱、线、饼、地图)。
  • 调度层:动画时间线、数据驱动更新策略。
  • 配置层:自定义 Schema + 编辑器。

成本:1~2 个高级前端 + 半年起。除非业务足够大,否则不要走这条路。

3. B. 框架 + 图表库(推荐)

3.1 框架选择

框架优势劣势
Vue3模板直观、SFC 开发快、社区大屏模板丰富大型应用 TS 类型推导比 React 弱
React 18状态/数据流灵活、生态广JSX 写大屏稍显啰嗦
Svelte / Solid体积小、运行快大屏组件库少、招人难

没有强偏好就 Vue3,社区大屏成熟模板(DataV-Vue3、jojojo 等)多;团队主栈是 React 就 React,别为大屏单独引入新框架。

3.2 图表库选择

适用优势劣势
Apache ECharts通用 2D 图表类型最全、文档好、配置驱动大数据量需要自己优化
AntV G2 / G2Plot统计图表、强语法图形语法清晰、可组合文档/示例不如 ECharts 直观
AntV S2大型透视表万级行列、性能强仅表格场景
AntV G6关系图、流程图、知识图谱关系类最强学习曲线陡
AntV L7地理空间可视化与 Mapbox/AMap 融合好需配地图底图
AntV X6流程图、ER 图编辑器场景成熟
D3.js自定义可视化极致灵活上手慢、维护成本高
Chart.js / Recharts简单图表上手快大屏复杂场景不够
Highcharts商业图表稳定商用收费

默认 ECharts;遇到统计学语法(分面、统计变换)选 G2;关系/流程选 G6;地理选 L7。

3.3 3D / GIS 库选择

适用备注
Three.js通用 3D数字孪生、城市 3D、特效
Babylon.js通用 3D文档/工具更工业,适合复杂引擎
Cesium真实地球 / 时空卫星、航空、影像;包大
Mapbox GL JS矢量地图海外/国内通用、样式灵活、商用计费
MapLibre GLMapbox 开源分支不想计费时用
高德/百度 JS API中国合规政企必选
deck.gl大数据量地理图层与 Mapbox 配合,海量散点/弧线
Leaflet轻量 2D 地图老项目、简单需求

数字孪生场景常见栈:Cesium / Mapbox + deck.gl + Three.js(地图打底 + 大数据图层 + 自定义模型)。

3.4 配套库

类型推荐
状态管理Pinia (Vue) / Zustand (React)
动画GSAP(关键帧/时间轴)、anime.js、Framer Motion
矢量动画Lottie(After Effects 导出)
图标iconfont / SVG sprite
工具dayjs、lodash-es、numeral、d3-format
开发服务器Vite
MockMSW、vite-plugin-mock

4. C. 低代码大屏平台

4.1 主流平台对比

平台厂商部署特点
阿里 DataV阿里云SaaS / 私有化模板/组件最多、生态成熟、按量计费
百度 Sugar BI百度智能云SaaS / 私有化与百度生态融合、AI 分析
观远 BI观远私有化强 BI 路线,大屏是子能力
网易有数网易私有化偏 BI
帆软 FineReport / FineVis帆软私有化报表起家、政企渗透深
DataV.GeoAtlas / 灯果数据多家SaaS偏轻量演示
腾讯云 RayData腾讯云SaaS3D/数字孪生场景强
开源:DataEase、Metabase、Superset开源私有化定制成本低、视觉一般

4.2 选低代码的判断

✅ 适合:

  • 业务部门要自助配看板,开发资源紧。
  • 看板生命周期短(汇报、活动、临时)。
  • 数据源标准(数据库、Excel、API)。

❌ 不适合:

  • 7×24 监控(自恢复、告警链路无法掌控)。
  • 极致视觉(领导汇报型,平台模板风格固定)。
  • 强定制交互(拖拽、联动、跳转规则复杂)。

4.3 低代码 + 自研混合

常见做法:低代码做日常看板、自研做对外汇报与监控大屏。两者用同一套数据接口,皮肤主题一致。这是企业最划算的组合。

5. 选型决策树

是否需要拖拽自助?
├─ 是 → 选低代码 (C),或自研 Schema 驱动 (B 进阶)
└─ 否
   └─ 单纯展示?
      ├─ 视觉极致 / 一次性汇报 → B(Vue/React + ECharts + Three.js + GSAP)
      ├─ 7×24 监控        → B(Vue/React + ECharts + WebSocket + Electron)
      └─ GIS / 3D 数字孪生 → B(Mapbox/Cesium + deck.gl + Three.js

6. 反模式

  • 用 D3 做整屏大屏:除非有专属可视化工程师,否则维护成本爆。
  • 用 Highcharts 做 ToB 项目却没买 license:合规风险。
  • 用低代码做 7×24 监控:自恢复、告警、降级没法接入。
  • 同时引入 ECharts + AntV G2 + Chart.js:包体翻倍、风格漂移;选一个为主。