纯文本输入,就能绘制精美数学图表:CMU绘图工具Penrose登GitHub热榜 | SIGGRAPH
鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAI
画数学插图令人头秃?
现在,CMU的研究人员们开发出了一款实用工具Penrose:
以纯文本的方式输入,根据语言描述,就能自动生成数学图表。
集合论:
几何:
线性代数:
光线追踪:
都不在话下。
整个过程,不需要手动进行繁琐调整,只需在软件中用编程语言的方式,描述数学表达式。
并且,这些表达式不仅限于基本功能,而是可以表达任何数学领域的复杂关系。
这一研究成果,入选计算机图形学顶会SIGGRAPH 2020。
在GitHub上,也得到了3500标星,登上热榜。
有网友认为:Penrose,就像是科学图表中LaTeX。
纯文本绘制数学图表
用LaTeX编辑数学公式的快乐,谁用谁知道。
那么Penrose具体是怎么绘制出数学图表的呢?
比如,要画出这样一个集合关系:
在软件界面中,完成这样的输入就能自动生成:
如果对配色、布局不满意,点击「resample」,系统会提供其他不同的选择:
也可以自己手动在「sty」文件中进行调整:
研究人员还提到,该系统支持与基于Web的应用程序集成。并且,Penrose IDE能够提供自动语法高亮和自动补全功能。
不过,目前Penrose尚处在初期版本,未向公众开放。研发团队表示,他们正在快马加鞭,希望能尽快上线公开版本。
数学符号如何变成精美图表?
作者之一、CMU计算机科学和机器人学助理教授Keenan Crane表示,他们打造Penrose的目的,是让所有人都能拥有数学家一般,绘制漂亮图表的能力。
为了实现这一目标,Penrose围绕两个设计原则来实现:
通过从数学符号到视觉图标的映射来规定图表;
通过求解相关有约束的优化问题来合成图表。
第一步,是用编程语言来规定数学对象及其可视化表示。
具体而言分为三个部分:
Substance:类似于HTML,用来指定内容。
Style:类似于CSS,用于调整外观和可视化表示。
Domain:声明数学领域中可用的对象、关系和符号。
需要说明的是,这并不意味着用户想要上手Penrose,必须学会三种语言。
实际上,大多数用户只要掌握Substance语言,类似这样:
Set A,B
intersecting(A,B)
set C := intersection(A,B)
Label A $\text{Circles}$
Label B $\text{Diagrams}$
Label C $\text{Venn Diagrams}$
Domain和Style就交给专业人士,要用的时候调用软件包就行了。
第二步,使用约束性优化来合成满足给定规范的图。
该方法主要受到手绘图的启发。
3500星,登上GitHub热榜
Penrose展现的效果,得到了网友们的点赞。
目前,Penrose的GitHub已经有3500标星,在Hacker News上也有399的热度。
有网友认为,想要理解数学概念,可视化是非常重要的手段,而Penrose可能会给数学教育带来很大的帮助。
还有网友表示,希望几何绘图软件Geogebra能集成这一功能。
不过,也有网友指出,简单的示例说明了系统的思想,但还是希望看到Penrose实现的更为复杂的数学概念可视化,以证明其确实可以表达数学领域的复杂关系。
传送门
论文地址:
http://penrose.ink/media/Penrose_SIGGRAPH2020.pdf
GitHub地址:
https://github.com/penrose/penrose
官网:
http://www.penrose.ink/
— 完 —
特惠福利 | 一站式音视频解决方案
量子位 QbitAI · 头条号签约作者
վ'ᴗ' ի 追踪AI技术和产品新动态
喜欢就点「在看」吧 !
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 锣鼓迎新春 舞乐庆华年 7924159
- 2 哪吒2爆火后唯一受害者出现 7955243
- 3 立春躲春的正确方式 7807945
- 4 南北民俗闹新春 欢欢喜喜过大年 7733122
- 5 正月初六送穷日 7616033
- 6 小孩睡着亲戚们开启自动投币 7523824
- 7 影院回应一天排99场哪吒2 7411827
- 8 女生醒来相亲对象站床边系摆拍 7374116
- 9 美对华加征10%关税背后真相 7268252
- 10 “以旧换新”激发消费新活力 7148627