Shaper是一款免费开源、基于 SQL(DuckDB)的数据可视化工具,用于创建数据仪表盘和分析结果。

Shaper 后端使用 Go 语言,前端使用 React 框架,遵循 MPL-2.0 开源协议,代码托管在 GitHub:
https://github.com/taleshape-com/shaper
功能特性
- 数据加载:Shaper 支持加载 CSV、JSON、Parquet、Excel、文本文件、HTTP 远程文件、S3、数据库(DuckDB、PostgreSQL、SQLite、MySQL)等数据源,也可以基于 DuckDB 扩展插件读取 Snowflake、Big Query、Clickhouse、Arrow Flight、Iceberg 以及 Google Sheets 等数据。
- SQL 支持:Shaper 底层基于 DuckDB 查询引擎,SQL 不仅用于查询和转换数据,同时也用于定义可视化组件。

- 动态仪表盘:通过数据过滤器生成动态交互式仪表盘;支持使用图表注解;可以显示或者隐藏仪表盘中的部件。

- 嵌入式仪表盘:可以使用 JavaScript 嵌入式 API 在应用程序中嵌入仪表盘,采用 JWT token 限制用户访问。

- 定时任务:支持创建定时任务,自动执行 SQL 脚本,可以用于加载远程数据、执行数据转换、清理历史数据等。

- 工作流:完全基于 SQL 脚本构建仪表盘,可以使用文本编辑器进行管理,使用 Git 进行版本控制,并且集成到 CI/CD 工作流中。
- 导出功能:可以导出 CSV、Excel 数据文件,可以导出 PDF 报告。
- 在线分享:支持生成可以通过在线分享的仪表盘链接,可以选择密码保护。

下载安装
使用 Docker 快速部署 Shaper 的命令如下:
sh
docker run --rm -it -p5454:5454 -v ./mydata:/data taleshape/shaper
启动服务之后,在浏览器中输入以下地址进行访问:

点击"+ New"新建可视化仪表盘。

参考文档: