web-dev-qa-db-ja.com

Jupyter Notebookで「print」出力をLaTeXとして表示することは可能ですか?

楕円体の面積や体積などを数えるための非常に簡単なスクリプトを書いていました。私は次のように出力を出力していました:

print('Dims: {}x{}m\nArea: {}m^2\nVolume: {}m^3'.format(a, round(b,2), P, V))

もちろん、この出力が得られたもの(サンプルデータ付き):

Dims: 13.49x2.25m
Area: 302.99m^2
Volume: 90.92m^3

前に書いたように、私はjupyterノートブックを使用しているので、$演算子を マークダウン LaTeX数式を作成するセル。

私の質問は、出力を生成することは可能ですか?Pythonコードを使用して

Latex_example

すべての返信をありがとう。

9
Sqoshu

displayオブジェクトでIPython.displayMath関数を使用します。

from IPython.display import display, Math
display(Math(r'Dims: {}x{}m \\ Area: {}m^2 \\ Volume: {}m^3'.format(a, round(b,2), P, V)))

ラテックススタイルの\\改行、およびr''文字列の使用に注意してください。これらの文字は、バックスラッシュをリテラルバックスラッシュとして使用し、エスケープ文字としては表示しません。

ソリューションが見つかりました こちら

14
sebas

テキストと数学をもう少し簡単に追加できる別のソリューションを次に示します。Markdownをr(バックスラッシュがエスケープ文字にならないように)とf文字列を値の挿入に使用します。

from IPython.display import display, Markdown

a = 13.49
b = 2.2544223
P = 302.99
V = 90.02

display(Markdown(
   rf"""
Dims: ${a}m \times{b:5.2}m$

Area: ${P}m^2$

Volume: ${V}m^3$
"""))
0
JMann