使用IPython.display.Latex时,LaTeX方程不会在Google Colaboratory中呈现

glS*_*glS 7 python latex mathjax google-colaboratory

在常规的jupyter笔记本中,例如,运行以下命令:

from IPython.display import display, Math, Latex
display(Math(r'F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx'))
Run Code Online (Sandbox Code Playgroud)

生成用LaTeX渲染的方程式(通过Mathjax)。

即使LaTeX在降价单元格中工作正常,上述生成的LaTeX方程似乎也无法在Google Colaboratory中呈现。同样,例如qutip的函数输出也会发生同样的情况,该输出通常会在乳胶中渲染(例如,qutip.basis(2, 0)通常会在乳胶中渲染,但不会在Colaboratory中渲染)。

为什么会这样?有办法进行这项工作吗?

小智 7

更新(2021 年 4 月):

可以在 Colab 中编写公式,只需将它们放在$符号之间,无需导入库:

$F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx$
Run Code Online (Sandbox Code Playgroud)

旧答案

作为替代方案,以下描述应该适用于 Colab 上的文本单元格。

$F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx$
Run Code Online (Sandbox Code Playgroud)

  • 可悲的是,现在这在 google colaboratory 上不起作用:( (2认同)

小智 6

您可以通过包含MathJax库来获取Latex进行渲染。

from IPython.display import Math, HTML
display(HTML("<script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.3/"
               "latest.js?config=default'></script>"))

Math(r'F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx')
Run Code Online (Sandbox Code Playgroud)

这里也提出了类似的问题: 在协作实验室的输出单元中渲染LaTeX


iju*_*eja 5

我在不知道呈现乳胶的降价单元格方式的情况下遇到了这个问题。所以如果有人正在寻找那个......

作为一种更简单的替代方法,可以使用 Google-colab 笔记本的文本单元格功能直接渲染 Latex。

例如,以下文本在输入到文本单元格时呈现如下所示,A

python notebook 

Equation 1
$$\frac{sin(x)}{x}$$

foo bar 

Equation 2
\begin{equation}
F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx
\end{equation}
Run Code Online (Sandbox Code Playgroud)

当由 colab 渲染时,它变成:

在此处输入图片说明