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

简介: 云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 画数学插图令人头秃? 现在,CMU的研究人员们开发出了一款实用工具Penrose: 以纯文本的方式输入,根据语言描述,就能自动生成数学图表。

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!


画数学插图令人头秃?

现在,CMU的研究人员们开发出了一款实用工具Penrose:

以纯文本的方式输入,根据语言描述,就能自动生成数学图表。

集合论:

1

几何:

2

线性代数:

3

光线追踪:

4

都不在话下。

整个过程,不需要手动进行繁琐调整,只需在软件中用编程语言的方式,描述数学表达式。

并且,这些表达式不仅限于基本功能,而是可以表达任何数学领域的复杂关系。

这一研究成果,入选计算机图形学顶会SIGGRAPH 2020。

在GitHub上,也得到了3500标星,登上热榜。

有网友认为:Penrose,就像是科学图表中LaTeX。

5

纯文本绘制数学图表

用LaTeX编辑数学公式的快乐,谁用谁知道。

那么Penrose具体是怎么绘制出数学图表的呢?

比如,要画出这样一个集合关系:

6

在软件界面中,完成这样的输入就能自动生成:

7

如果对配色、布局不满意,点击「resample」,系统会提供其他不同的选择:

8

也可以自己手动在「sty」文件中进行调整:

9

研究人员还提到,该系统支持与基于Web的应用程序集成。并且,Penrose IDE能够提供自动语法高亮和自动补全功能。

不过,目前Penrose尚处在初期版本,未向公众开放。研发团队表示,他们正在快马加鞭,希望能尽快上线公开版本。

数学符号如何变成精美图表?

作者之一、CMU计算机科学和机器人学助理教授Keenan Crane表示,他们打造Penrose的目的,是让所有人都能拥有数学家一般,绘制漂亮图表的能力。

为了实现这一目标,Penrose围绕两个设计原则来实现:

  • 通过从数学符号到视觉图标的映射来规定图表;
  • 通过求解相关有约束的优化问题来合成图表。

01

第一步,是用编程语言来规定数学对象及其可视化表示。

具体而言分为三个部分:

Substance:类似于HTML,用来指定内容。

Style:类似于CSS,用于调整外观和可视化表示。

Domain:声明数学领域中可用的对象、关系和符号。

10

需要说明的是,这并不意味着用户想要上手Penrose,必须学会三种语言。

实际上,大多数用户只要掌握Substance语言,类似这样:

11

Domain和Style就交给专业人士,要用的时候调用软件包就行了。

第二步,使用约束性优化来合成满足给定规范的图。

该方法主要受到手绘图的启发。

12

3500星,登上GitHub热榜

Penrose展现的效果,得到了网友们的点赞。

目前,Penrose的GitHub已经有3500标星,在Hacker News上也有399的热度。

有网友认为,想要理解数学概念,可视化是非常重要的手段,而Penrose可能会给数学教育带来很大的帮助。

13

不过,也有网友指出,简单的示例说明了系统的思想,但还是希望看到Penrose实现的更为复杂的数学概念可视化,以证明其确实可以表达数学领域的复杂关系。

14

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/live

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-06-07
本文作者:鱼羊
本文来自:“量子位公众号”,了解相关信息可以关注“公众号QbitAI”

相关文章
|
7月前
|
网络协议 Linux Android开发
解决GitHub无法访问的问题:手动修改hosts文件与使用SwitchHosts工具
解决GitHub无法访问的问题:手动修改hosts文件与使用SwitchHosts工具
488 1
|
7月前
|
Web App开发 前端开发 数据库
推荐GitHub上开源的一款独立开发者出海技术栈和工具合集
推荐GitHub上开源的一款独立开发者出海技术栈和工具合集
263 0
|
7月前
|
前端开发
Github项目分享——免费的画图工具drow,最新前端面试题整理
Github项目分享——免费的画图工具drow,最新前端面试题整理
|
2月前
|
数据采集 应用服务中间件 Go
开源的键鼠共享工具「GitHub 热点速览」
开源的键鼠共享工具「GitHub 热点速览」
|
5月前
|
人工智能 分布式计算 BI
透视开源生态,OSGraph——GitHub全域数据图谱的智能洞察工具
【7月更文挑战第5天】透视开源生态,OSGraph——GitHub全域数据图谱的智能洞察工具
透视开源生态,OSGraph——GitHub全域数据图谱的智能洞察工具
|
4月前
|
开发者 存储 API
Xamarin 开发者的社区资源概览:从官方文档到GitHub示例,全面探索提升开发技能与解决问题的多元化渠道与实用工具
【8月更文挑战第31天】Xamarin 开发者社区资源概览旨在提升开发效率与解决问题,涵盖官方文档、社区论坛、GitHub 项目等。官方文档详尽,涵盖 Xamarin.Forms 使用、性能优化等;社区论坛供交流心得;GitHub 提供示例代码。此外,第三方博客、视频教程及 Xamarin University 等资源也丰富多样,适合各阶段开发者学习与提升。通过综合利用这些资源,开发者可不断进步,应对技术挑战。
56 0
|
6月前
|
机器学习/深度学习 人工智能 算法
清华接手,YOLOv10问世:性能大幅提升,登上GitHub热榜
【6月更文挑战第6天】清华大学团队推出YOLOv10,实现目标检测性能大幅提升。该算法在效率和准确性间取得更好平衡,解决NMS后处理问题,优化模型架构,减少参数和FLOPs。YOLOv10在COCO基准测试中表现出色,虽有未在大规模数据集预训练及小规模模型性能差距的局限,但已成实时检测领域重要进展,引领未来研究方向。[链接](https://arxiv.org/pdf/2405.14458)
218 1
|
算法 Dubbo NoSQL
Trending热榜关闭前,我把Github今年最火Java面试题汇总扒下来了
很多人都说今年对于IT行业根本没有所谓的“金三银四”“金九银十”。在各大招聘网站或者软件上不管是大厂还是中小公司大多都是挂个招聘需求,实际并不招人;在行业内的程序员基本都已经感受到了任老前段时间口中所谓的“寒气”。 虽然事实确实是如此,但你细心观察之后就会发现,圈子里那些平时注重提升自己核心竞争力并且在空闲时间不断提升的人,他们出去面试,投简历,最终还是会能有面试邀约,还是能在大环境不好的情况下斩获自己理想的Offer!由此可见,企业的招聘需求是减少了,并不是没有了!你想要在这样的大环境下突围就必须付出比别人更多的精力跟时间,利用好工作之余的时间进行学习提升。 技术水平跟经验只能靠平时,但
|
消息中间件 缓存 Java
GitHub下载热榜,阿里技术官限时开源三份百亿级架构系统手册
在如今是属于高流量的时代,不知道各位了解高并发吗?今天给大家带来的是出自阿里大牛手写三份绝密手册,《百亿级并发系统设计》+《微服实战 +亿级流量网站架构核心技术》
309 0
|
7月前
|
缓存 NoSQL 中间件
重磅来袭!腾讯T7手写高并发实战手册,称霸GitHub热榜
Netty为何这么火 Netty是互联网中间件领域使用最广泛、最核心的网络通信框架之一。几乎所有互联网中间件或者大数据领域均离不开Netty,掌握Netty是作为一名初中级工程师迈向高级工程师重要的技能之一。 Netty之所以受青睐,是因为Netty提供异步的、事件驱动的网络应用程序框架和工具。作为一个异步框架,Netty的所有IO操作都是异步非阻塞的,通过FutureListener机制,用户可以方便地主动获取或者通过通知机制获得IO操作结果。 为什么写Netty? 目前来说,主要的互联网公司,例如阿里、腾讯、美团、新浪、淘宝等,在高级工程师的面试过程中,就经常会问一些高