数据可视化仪表盘:一个 option,一张专业图表
一、老板要的"大屏",其实是入门题
几乎每个新手都会遇到这个需求:"给领导做个数据看板,有图表、有数字、能刷新。"传统做法要先选一个图表库,研究它的引入方式、容器尺寸、自适应缩放,再手写数据接口和刷新逻辑。而对于刚入行的你来说,这套东西每一环都能卡半天。
geejing WebBuilder 快速开发平台的答案是:图表就是一个组件(Wb.Chart),往页面里一放,把 ECharts 的配置粘进去,图就出来了。平台「示例 → basic → dashboard」就是一个现成的仪表盘。
二、先看效果:一张仪表盘长什么样
打开示例,你会看到一张深色背景的数据看板:面积图、折线图、柱状图、环形百分比图、仪表盘、玫瑰图、饼图,中间还嵌着一张可以翻页的员工数据表格。

这不是设计稿,是真实运行界面。重点在于:这一整屏由一个模块(dashboard.xwl)描述,每个图格就是一个 Wb.Chart 组件,中间的表格就是你在第一篇文章学过的 Wb.Grid。组件拼装的思路,和做表单、做列表完全一致。

三、核心三步:容器、option、数据
1. 图表组件的骨架
每个图表在模块里就是这样一段配置:
cls: Wb.Chart
properties:
cid: stackedAreaChart
option: |
({
color: ['#80FFA5', '#00DDFF', ...],
tooltip: { trigger: 'axis' },
xAxis: [{ type: 'category',
data: ['Mon','Tue','Wed','Thu','Fri','Sat','Sun'] }],
yAxis: [{ type: 'value' }],
series: [{ name: 'Line 1', type: 'line', ... }]
})
option 的内容就是标准的 ECharts 配置——你在 ECharts 官网示例库看到的任何一段配置,几乎都可以原样粘进来。平台做了三件事:替你引入了 ECharts 库、替你管好了容器尺寸(窗口缩放图表自动重绘)、把 option 从字符串解析成对象(所以两边各包了一层括号)。
2. 好看的颜色不是玄学,是渐变
示例里面积图为什么那么"高级"?因为用了 ECharts 的渐变填充:
areaStyle: {
opacity: 0.8,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ offset: 0, color: 'rgb(128, 255, 165)' },
{ offset: 1, color: 'rgb(1, 191, 236)' }
])
}
这段代码也是从 ECharts 官方示例直接搬来的。用 WebBuilder 快速开发平台做图表,你的知识投资全部落在 ECharts 这个通用技能上,不会被平台私有语法锁死。
3. 图表和表格混排
仪表盘中间那张 Staff List 表格,配置和你已经学会的 Grid 一模一样:url 指向数据接口,服务端分页自动生效。图表负责"看趋势",表格负责"看明细",两者摆进同一个 Viewport,用布局属性排好位置,一张看板就成了。
四、进阶:让图表动起来
静态图表只能交作业,会刷新的图表才算产品。思路很简单:定时(或事件触发)重新请求接口,然后更新 option 再重绘:
Wb.ajax({
url: xpath + '/data',
success(resp) {
let chart = app.stackedAreaChart;
chart.option.series[0].data = resp.today;
chart.update();
}
});
app.xxx:在设计器里给组件起了 cid,脚本里就能拿到它;
option是普通对象,想改哪个数据就改哪个;
update()通知图表重绘。
配合窗口组件做"钻取"也很自然:给图表加一个点击事件,用户点了饼图的某一块,就弹窗显示那部分的明细表格——事件、窗口、表格
五、动手练习:十五分钟做出你的第一块看板
- 打开「示例 → basic → dashboard」,把每个图表的 option 和运行效果对照看一遍;
- 打开「开发套件 → 集成开发环境」,新建自己的模块,拖入 Viewport 和 Wb.Chart;
- 去 ECharts 官网示例库挑一个喜欢的图,复制 option 粘进来,运行看效果;
- 把 option 里的假数据换成一个服务端接口返回的真实数据(先用 dashboard 的接口练习);
- 加入一张 Grid,和图表并排,完成你的第一块图文并茂的看板。
你会发现:难的部分(绘图、缩放、兼容)平台和 ECharts 都替你做完了,你只剩"数据长什么样"这一件事。这正是 geejing WebBuilder 快速开发平台对新手最友好的地方——每一层复杂度都有人替你兜底,你只需要一层一层往下剥。
更多推荐


所有评论(0)