Mosaic项目v0.13.0版本发布:增强SQL查询与可视化交互能力
Mosaic是一个创新的数据可视化框架,它结合了SQL查询引擎与交互式可视化组件,让开发者能够高效地构建复杂的数据分析应用。该框架通过声明式语法将数据处理与可视化紧密结合,大大简化了数据探索流程。
核心功能增强
1. 强大的WITH子句支持
新版本引入了对SQL WITH子句(即公共表表达式CTE)的完整支持。开发者现在可以使用cte()方法直接构建CTE查询节点,并通过materialized属性控制是否显式物化CTE。这项改进使得复杂查询的编写更加灵活和高效。
// 示例:使用CTE构建查询
const query = cte('temp', materialized(true))
.define(select('*').from('data'))
.with(select('*').from('temp'));
2. 几何平均数聚合函数
新增geomean聚合函数,支持对数据进行几何平均计算。该函数还支持预聚合优化,能够显著提升大数据集的计算性能。几何平均数在金融分析、增长率计算等场景中尤为重要。
-- 示例:计算销售数据的几何平均增长率
SELECT geomean(growth_rate) FROM sales_data
交互能力升级
1. 可激活组件接口
引入Activatable接口类型,为可视化组件提供了标准化的选择激活机制。这项改进使得不同组件间的交互行为更加一致,开发者可以更容易地创建复杂的交互式可视化应用。
2. 跨框架支持
新增makeClient效果API,使Mosaic能够无缝集成到其他主流前端框架中,如React、Svelte等。这一改进显著扩展了Mosaic的应用场景,让更多开发者能够受益于其强大的数据可视化能力。
架构优化
1. 模块化改进
项目全面转向纯ESM模块,更新了package.json的导出配置,使模块加载更加高效和符合现代JavaScript标准。
2. 测试体系升级
采用vitest工作区来运行跨所有包的测试用例,提高了测试效率和覆盖率,确保代码质量。
3. 示例项目重组
将所有示例项目集中到专门的examplesmonorepo文件夹中,并按框架类型分类,使开发者能够更轻松地找到相关示例代码。
实际应用价值
这些改进使得Mosaic在以下场景中表现更出色:
- 复杂数据分析:通过CTE支持,可以更优雅地处理多阶段数据分析流程。
- 交互式仪表盘:增强的交互接口让仪表盘开发更加简单直观。
- 跨平台应用:新的框架集成能力让Mosaic可以应用于更广泛的技术栈中。
v0.13.0版本的发布标志着Mosaic在成为全功能数据可视化解决方案的道路上又迈出了坚实的一步。无论是SQL查询能力的增强,还是可视化交互的改进,都为开发者提供了更强大的工具来构建下一代数据分析应用。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0214
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03