python - 在 sympy 乳胶中将系数渲染为分数
问题描述
我想渲染一个分数乘以一个积分。我试过了:
from sympy import *
x, h = symbols("x h")
(2/h) * Integral(x**2, (x, 0, 1))
生成的乳胶是:
'\\frac{2 \\int\\limits_{0}^{h} x^{2}\\, dx}{h}'
看起来很可怜:
是否可以像这样将分数保留为系数?
这可以使用sympy live轻松复制。谢谢你的帮助。
解决方案
正如@Stelios 指出的那样,您可以使用未评估的 Mul 使表达式按您想要的方式显示。为避免重新输入表达式,并将 Integral 之外的所有内容拉到前面,您可以使用以下命令:
>>> latex(Mul(*eq.as_independent(Integral, as_Add=False),evaluate=False))
\frac{2}{h} \int\limits_{0}^{1} x^{2}\, dx
该as_independent
方法将独立于某些事物的术语或因素分开 - 在本例中为 Integral。未评估的 Mul 将它们重新组合在一起,但阻止它们重新排序。
推荐阅读
- actionmailer - `add_template_helper` 方法似乎在 Rails 6.1 中不起作用
- firebase - 颤振:我想将用户数据从firestore保存到变量,但它返回null
- python - Anaconda 环境错误 - 访问被拒绝
- c# - OnCollisionEnter(Collision col) 不工作。注意:仅在使用参数调用时
- reactjs - 在反应中,如何从对象中读取属性和数据
- firebase - 是否可以在 react native 中使用 firebase 的 js SDK 获取 android 的通知
- google-cloud-platform - Google Cloud 服务帐号监控提醒
- reactjs - 如何在reactjs中获取对象的评级数组
- scala - 使用 fs2 处理带有内部流的流
- android - 如何转换时间戳以获得Android中的精确毫秒差异?