D2 是一种图表脚本语言,它可以将文本转换为图表。该语言的名称来自“Declarative Diagramming”(声明式图表),它的设计理念是用户只需要描述需要绘制的图表,D2 就能自动生成相应的图像。因此,使用 D2 可以大大简化图表制作的流程。
特性
-
「主题」:D2 提供了由专业设计师设计的多个独特主题,可以轻松地用于博客、维基和演示文稿等不同场合。
-
「Sketch 模式」:D2 提供了漂亮的手绘风格,使得图表更加生动有趣。
-
「动画效果」:D2 是唯一一个可以从文本生成动画图表的语言。
-
「LaTeX 支持」:D2 对于学术论文等需使用 LaTeX 的场合十分适用。
-
「多语言支持」:D2 支持几乎所有语言,包括英语、中文、法语甚至表情符号等。
-
「代码片段」:D2 专为软件图表设计,可以在图表中直接展示语法高亮的代码片段。
-
「Markdown 支持」:D2 可以使用 Markdown 描述图表,提供长篇说明。
-
「表格支持」:D2 可以展示结构化数据,如 SQL 表格等。
示例
输入 D2 语法:
# Actors
hans: Hans Niemann
defendants: {
mc: Magnus Carlsen
playmagnus: Play Magnus Group
chesscom: Chess.com
naka: Hikaru Nakamura
mc -> playmagnus: Owns majority
playmagnus <-> chesscom: Merger talks
chesscom -> naka: Sponsoring
}
# Accusations
hans -> defendants: 'sueing for $100M'
# Offense
defendants.naka -> hans: Accused of cheating on his stream
defendants.mc -> hans: Lost then withdrew with accusations
defendants.chesscom -> hans: 72 page report of cheating
生成:
视频演示:
快速开始
使用 D2 最方便的方法是将其作为 CLI
可执行文件运行以从.d2
文件生成 SVG
。
# First, install D2
curl -fsSL https://d2lang.com/install.sh | sh -s --
echo 'x -> y -> z' > in.d2
d2 --watch in.d2 out.svg
D2 会在浏览器中将 out.svg
实时重新加载为 in.d2
。
安装
最简单的安装方法是使用 curl 安装脚本:
curl -fsSL https://d2lang.com/install.sh | sh -s --
或者使用 Go 从源代码安装:
go install oss.terrastruct.com/d2@latest
卸载:
curl -fsSL https://d2lang.com/install.sh | sh -s -- --uninstall
D2 作为库
除了作为可运行的 CLI 工具之外,D2 还可以用于从 Go 程序生成图表。有关示例,可参考./docs/examples/lib
,这篇博文演示了一个完整的、可运行的示例。
传送门
开源协议:MPL2.0
开源地址:https://github.com/terrastruct/d2
「回复【加群】加入开源技术交流群,干货很多!」
-END-
原文始发于微信公众号(开源技术专栏):D2:声明式图表语言,快速生成高质量图表
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/135607.html