簡體   English   中英

如何在 VS Code 中使用 Jupyter Notebook Extension 顯示 Latex 樣式字體?

[英]How can I display Latex style font using Jupyter Notebook Extension in VS Code?

我正在使用 VS Code 中的 Python 的 Jupyter Notebook Extension 和 Sympy 模塊做作業。 我正在嘗試以 Latex 字體渲染方程,但它不像我想象的那樣工作。 有沒有人能猜出問題出在哪里? 我添加了與問題相關的捕獲圖像。

我在用

  • VS 代碼 1.52
  • Jupyter 筆記本擴展 v2020.12.414227025
  • Python 擴展 v2020.11.371526539

謝謝你,祝你星期天愉快!

當我像下面這樣輸入隨機方程時,它會以這種樣式顯示

但是,當我輸入我在網上找到的某個等式時,它會以正確的 Latex 字體顯示。

那是該表達式的正確 LaTeX output。 這是用超幾何 function 表示的積分結果:

https://en.wikipedia.org/wiki/Generalized_hypergeometric_function

您可能無法識別 function 但它是一個普通的數學 function 並且您可以將值替換為 is 並對其進行評估等:

In [17]: antiderivative = integrate(Si(x)/x, x)

In [18]: antiderivative
Out[18]: 
       ⎛              │   2 ⎞
   ┌─  ⎜   1/2, 1/2   │ -x  ⎟
x⋅ ├─  ⎜              │ ────⎟
  2╵ 3 ⎝3/2, 3/2, 3/2 │  4  ⎠

In [19]: antiderivative.subs(x, 1)
Out[19]: 
 ┌─  ⎛   1/2, 1/2   │     ⎞
 ├─  ⎜              │ -1/4⎟
2╵ 3 ⎝3/2, 3/2, 3/2 │     ⎠

In [20]: antiderivative.subs(x, 1).n()
Out[20]: 0.981810799391358

許多看起來很普通的數學函數可以用超幾何函數來表示,有時可以將它們簡化為更容易識別的東西:

In [27]: hyper([], [S(1)/2], -x**2/4)
Out[27]: 
     ⎛    │   2 ⎞
 ┌─  ⎜    │ -x  ⎟
 ├─  ⎜    │ ────⎟
0╵ 1 ⎝1/2 │  4  ⎠

In [28]: hyperexpand(_)
Out[28]: cos(x)

能夠根據超幾何函數重寫積分是很有用的,因為可以集成超幾何函數的例程可以適用於各種可能的被積函數。 它特別用於特殊功能(例如Si ),而不需要我們可能想要集成的每個新 function 的特殊規則。 SymPy 有一個特定的集成例程meijerg ,它使用更通用的 Meijer G function 來執行此操作:

https://en.wikipedia.org/wiki/Meijer_G-function

SymPy 已使用meijerg例程進行此積分,盡管看起來結果已轉換為超幾何函數而不是 G 函數。 有時可以簡化定積分的結果,即使它是使用只能用超幾何/G 函數表示的反導數來計算的。

在這個積分的情況下,雖然看起來 SymPy 不能使用其他函數來表達它。 我也檢查了 WolframAlpha,它在超幾何函數方面也給出了一個不太簡單(但等效)的表示:

https://www.wolframalpha.com/input/?i=integrate+Si%28x%29%2Fx

我不知道為什么你有兩種不同類型的 output(Unicode 和 LaTeX),但我可以告訴你如何確定 LaTeX 呈現是始終如一的默認值

from sympy import *
init_printing(use_latex=True)
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM