VBI
用 DSL 表达分析意图,用 Builder 组织图表、仪表盘与洞察。
VBI 是面向分析应用的无界面核心库。它将图表类型、维度、指标、筛选和布局保存在 DSL 中,通过公开 Builder 完成配置与构建,让同一份分析能力可以用于不同的界面和集成。
功能概览
快速开始
下面构建一张按区域汇总销售额的柱形图,使用 VQuery 在内存中查询数据,再生成 VSeed DSL。代码按顺序放在同一个支持顶层 await 的模块中执行。
安装
安装 VBI,以及本例使用的查询和可视化依赖。
接入数据
连接器提供字段信息和查询方法。这里使用内置 JSON 数据;业务应用可在连接器中调用自己的数据服务。
配置图表
从空图表 DSL 创建 Builder,然后添加区域维度和销售额度量。
渲染
在页面中准备一个 <div id="chart"></div> 容器,再将 VSeed DSL 转换为 VChart Spec。
VBI 核心配置与构建不依赖 DOM;上面的渲染步骤在浏览器中执行。表格和透视图可使用 VTable,详见 VSeed 快速开始。
核心概念
DSL:可保存的分析状态
Chart、Dashboard 和 Insight 各自拥有 DSL,保存其配置与内容。chart.build() 返回当前图表 DSL,恢复时重新创建 Builder,并确保相应连接器已经注册。
Builder:通过操作维护配置
Builder 提供维度、指标、筛选等领域操作,并维护 DSL 的一致性。界面只需调用公开 API,再使用构建结果完成渲染。图表可通过 observeDeep() 订阅配置变化,通过 undoManager 撤销与重做。
Connector:分析与数据的连接点
discoverSchema() 返回字段信息,query() 执行查询并返回数据。连接器负责对接数据源;默认图表适配器负责把 VBI 配置转换为 VQuery 和 VSeed DSL。
从单图到仪表盘
使用 vbi.dashboard 组织多张图表、Insight 与布局;使用 vbi.resources 注册可复用的图表和洞察资源。分析配置由核心库管理,React 或其他界面负责交互和具体渲染。
下一步
- 图表示例:查看图表切换、筛选、主题等完整配置。
- 标准实践:体验基于 Builder 的分析界面。
- Playground:在线修改配置并查看结果。
- API 文档:查阅实例、Builder 和资源管理接口。
- VQuery 介绍:了解底层数据查询能力。