CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜


鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAI
画数学插图令人头秃?
现在 , CMU的研究人员们开发出了一款实用工具Penrose:
以纯文本的方式输入 , 根据语言描述 , 就能自动生成数学图表 。
集合论:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
几何:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
线性代数:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
光线追踪:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
都不在话下 。
整个过程 , 不需要手动进行繁琐调整 , 只需在软件中用编程语言的方式 , 描述数学表达式 。
并且 , 这些表达式不仅限于基本功能 , 而是可以表达任何数学领域的复杂关系 。
这一研究成果 , 入选计算机图形学顶会SIGGRAPH 2020 。
在GitHub上 , 也得到了3500标星 , 登上热榜 。
有网友认为:Penrose , 就像是科学图表中LaTeX 。
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
纯文本绘制数学图表
用LaTeX编辑数学公式的快乐 , 谁用谁知道 。
那么Penrose具体是怎么绘制出数学图表的呢?
比如 , 要画出这样一个集合关系:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
在软件界面中 , 完成这样的输入就能自动生成:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
如果对配色、布局不满意 , 点击「resample」 , 系统会提供其他不同的选择:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
也可以自己手动在「sty」文件中进行调整:
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
研究人员还提到 , 该系统支持与基于Web的应用程序集成 。 并且 , Penrose IDE能够提供自动语法高亮和自动补全功能 。
不过 , 目前Penrose尚处在初期版本 , 未向公众开放 。 研发团队表示 , 他们正在快马加鞭 , 希望能尽快上线公开版本 。
数学符号如何变成精美图表?
作者之一、CMU计算机科学和机器人学助理教授Keenan Crane表示 , 他们打造Penrose的目的 , 是让所有人都能拥有数学家一般 , 绘制漂亮图表的能力 。
为了实现这一目标 , Penrose围绕两个设计原则来实现:
通过从数学符号到视觉图标的映射来规定图表;
通过求解相关有约束的优化问题来合成图表 。
CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
第一步 , 是用编程语言来规定数学对象及其可视化表示 。
具体而言分为三个部分:
Substance:类似于HTML , 用来指定内容 。
Style:类似于CSS , 用于调整外观和可视化表示 。
Domain:声明数学领域中可用的对象、关系和符号 。

CMU纯文本输入,就能绘制精美数学图表:CMU绘图工具登GitHub热榜
本文插图
需要说明的是 , 这并不意味着用户想要上手Penrose , 必须学会三种语言 。
实际上 , 大多数用户只要掌握Substance语言 , 类似这样: