0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

生成Latex公式,不用学Latex复杂的语法

中科院长春光机所 来源:极市平台 2020-08-21 11:41 次阅读

写论文时,手敲成堆的计算公式,被虐到头秃?

做讲课PPT时,几十页的计算推理公式,恨不得直接手写拍照? 现在,解放双手的时刻来了,只需要掌握一点Python语法,上面的公式只需要4行就能生成,其中3行还是Python的计算公式。

△没错,就是这几行

这款名为handcalcs的工具包,生成Latex公式,但不用学Latex复杂的语法。 关键是,大小只有4.6MB,相当于Jupyter里一个小小的插件。 平方、平方根、分式、三角函数、脚注……这个插件的功能五脏俱全,不仅能生成公式,还能计算结果。 此外,也有单位换算、格式调整等功能。 来看看它的用法。

基础版:公式+计算

装上handcalcs插件后,Python就从一个无情的计算器,升级成了华丽的公式生成器。 在Python语法基础上,将计算公式呈现为Latex格式,只需要加一行代码。 没错,这行代码就是%%render。 也就是说,如果你想要生成Latex公式,只需要在计算公式前加个%%render。 不仅如此,Python还会自动帮你计算出结果。 如下图,先设好3个参数a、b、c的值,然后用Python列出表达式,在最前面放个%%render。 然后,列出x的表达式。

duang的一下,x用a、b、c表达的结果就展示了出来,而且还算出了结果。 再也不用输入大段Latex的复杂语法,生成复杂的计算公式了。 此外,如果想在函数中用这个工具插件,那就再加一行@handcalc(),但要注意return locals(),像这样:

生成的效果也是一样的。 此外,如果需要在公式中加上判断条件,系统也能生成。

至于积分什么的,生成起来也无压力。

你以为这就结束了? 还早,生成Latex公式只是这个工具的基础用法。

进阶版:格式+单位换算

此外,handcalcs还带有格式调整、特殊字符、单位换算等功能。

格式调整

首先,是对参数格式的调整。 如果你在某个公式中用到了好几个参数,但这些参数单独占一行会导致浪费纸张可读性很差,那就试试加一行##Parameters。 这样,一行里面就能放3个参数,而且不占很多地儿(减小行间距)。

当然,如果一行公式看起来太拥挤,还能调整它的长短。 只需要在公式前面加上#long或者#short,公式就能根据你的心意变成几行,使推导过程看起来更清晰。

此外,如果不想在结论中给出计算结果,只保留参数公式,也是可以的,在前面加个#symbolic就好了。 如下图,原本的计算结果就会被隐去,取而代之的是只有参数的表达式。

△当你的数学老师想让你计算公式时

而如果想在公式后面加些注释(或者「式3.1」这种东西),这里也能直接生成。

此外,对于特殊字符的生成,这里也有方法。

特殊字符

如果你需要在字母右下角标些脚注,有的脚注可能还会「套娃」。 没关系,用一个下划线就能搞定,一个不够,就多来几个。

此外,有着各种奇怪念法的希腊字母、还有特殊字符等,这里也能根据读音生成。

单位换算

最关键的是,handcalcs绝不仅仅是数学计算式生成器,它还带有单位换算的功能。 如果是物理方面的计算公式,输入表达式和单位后,handcalcs能自动生成单位换算结果。

这样的话,就不用再费劲地列量纲,看这两个单位相乘相除的结果究竟是个啥了。

转成Latex语法

当然,如果你想将生成的Latex公式还原成Latex语法,粘回Latex中去用,这里也提供了非常便捷的操作。 只需要一个%%tex,handcalc就会自动帮你生成Latex语法。

小限制

不过,这个工具包也有一些小限制。 例如,并非所有的数据类型都适用,例如Python的「容器数据」(collections)。 此外,也并非Python中的所有公式都适用,例如for就不支持这个工具的渲染。 但除了这些小限制外,这个工具包不失为一个强大的公式生成器,论文中需要生成的公式基本都够用了。 还有一些其他的细节功能,可以戳下方传送门查看。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4798

    浏览量

    68728
  • python
    +关注

    关注

    56

    文章

    4798

    浏览量

    84800
  • LATEX
    +关注

    关注

    0

    文章

    13

    浏览量

    8472

原文标题:1行代码搞定Latex公式编写

文章出处:【微信号:cas-ciomp,微信公众号:中科院长春光机所】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    AIGC与传统内容生成的区别 AIGC的优势和挑战

    、AIGC与传统内容生成的区别 数据类型与处理 : AIGC主要面向非结构化数据的生成,如自然语言文本、图像、音频、视频等。这类数据规模更大,内在结构更复杂,对处理威廉希尔官方网站 提出了更高要求。 传统内容
    的头像 发表于 11-22 16:04 350次阅读

    EMC常见公式大全

    在日常工作中,难免会遇到公式的推导和单位的换算。工作多年后,公式忘记了很正常。特别是EMC的公式时域频域转换,又是log,又是dB,实在是有点烧脑。最近笔者在计算一些东西查找了一堆公式
    的头像 发表于 11-19 09:48 559次阅读
    EMC常见<b class='flag-5'>公式</b>大全

    云端弹性计算公式有哪些内容?

    云端弹性计算公式有哪些内容?云端弹性计算公式涵盖资源分配、性能监控、自动伸缩及积分计算等方面。资源分配依据虚拟机配置和实际需求动态调整;性能监控实时监控CPU、内存等关键指标;自动伸缩根据预设阈值
    的头像 发表于 11-15 11:04 191次阅读

    什么是光子

      本文概述了光子,包括其基本原理、关键威廉希尔官方网站 、应用和新兴趋势。 一、光子的基本原理 光子是一门研究光和其他形式辐射能的学科。它涉及使用光学元件、激光、光纤和电子光学仪器来产生、操纵和检测光。它
    的头像 发表于 10-29 06:21 198次阅读

    Verilog语法中运算符的用法

    verilog语法中使用以下两个运算符可以简化我们的位选择代码。
    的头像 发表于 10-25 15:17 934次阅读
    Verilog<b class='flag-5'>语法</b>中运算符的用法

    AIGC与传统内容生成的区别

    AIGC : 主要面向非结构化数据的生成,如自然语言文本、图像、音频、视频等。 这类数据规模更大,内在结构更复杂,对处理威廉希尔官方网站 提出了更高要求。 传统内容生成 : 主要处理结构化数据,如数据库中的文本或数字信息。 数据结构和类型是
    的头像 发表于 10-25 15:13 464次阅读

    复杂电磁环境模拟系统设计方案

    是能够模拟真实战场或特定测试场景下的复杂电磁环境,包括各种通信信号、雷达信号、干扰信号、噪声等,以评估电子设备的性能和稳定性。 智慧华盛恒辉系统组成 1. 信号生成单元 功能:根据预设或实时编辑的信号参数生成电磁环境信
    的头像 发表于 07-17 17:06 460次阅读

    生成式AI的基本原理和应用领域

    复杂性和创新性的内容的威廉希尔官方网站 。这种威廉希尔官方网站 不仅限于文本生成,还广泛应用于图像、音频、视频等多个领域。本文将详细探讨生成式AI的原理、关键威廉希尔官方网站 、应用领域以及面临的挑战。
    的头像 发表于 07-04 11:50 1547次阅读

    FPGA学习笔记---基本语法

    :task...endtask 11、循环语句:for 12、赋值符号:=和<=(阻塞和非阻塞赋值) 硬件设计的精髓,力求用最简单的语言描述最复杂的硬件,这也是硬件描述语言的本质。对于做RTL级别的设计而言,掌握好上面这些语法很重要。
    发表于 06-23 14:58

    labview公式节点中的rand函数使用

    labview公式节点中的rand函数怎么使用呀,我的目的是生成0-3区间内的4位小数的随机数
    发表于 04-25 23:54

    什么是方波发生器?详解方波发生器电路图和应用

    一次又一次地重复并产生方波。 方波的频率由 [Latex]f=\\\\frac{1}{1.2RC}[/Latex] 2、使用与非门的方波发生器 使用与非门是制作方波发生器的最简单方法之一。 我们需要
    发表于 04-02 14:24

    【鸿蒙】NAPI 框架生成工具实现流程

    NAPI 框架生成工具 可以根据用户指定路径下的 ts(typescript)接口文件一键生成 NAPI 框架代码、业务代码框架、GN 文件等。在开发 JS 应用与 NAPI 间接口时,底层框架
    的头像 发表于 02-28 17:00 702次阅读
    【鸿蒙】NAPI 框架<b class='flag-5'>生成</b>工具实现流程

    小白大模型:什么是生成式人工智能?

    来源:Coggle数据科学什么是生成式人工智能?在过去几年中,机器学习领域取得了迅猛进步,创造了人工智能的一个新的子领域:生成式人工智能。这些程序通过分析大量的数字化材料产生新颖的文本、图像、音乐
    的头像 发表于 02-22 08:27 1707次阅读
    小白<b class='flag-5'>学</b>大模型:什么是<b class='flag-5'>生成</b>式人工智能?

    欧姆定律三个公式应如何计算

    欧姆定律是电路中的一种基本关系,用于描述电压、电流和电阻之间的关系。根据欧姆定律,当电流通过一个导体时,电流与电压成正比,与电阻成反比。在这篇文章中,我们将详细介绍欧姆定律的三个公式:电流公式、电压
    的头像 发表于 01-10 13:53 3891次阅读

    生成式人工智能的应用

    ChatGPT 虽然很酷,但这只是一个开始; 生成式人工智能的企业用途要复杂得多。
    的头像 发表于 01-09 11:19 1341次阅读