解決在jupyter筆記本中sympy符號無法渲染為latex的問題


我需要將符號計算的結果打印為 LaTeX 輸出。

❓ 在 \(jupyter \ notebook\) 中無法正常顯示 \(sympy\) 符號輸出 (init_printing(use_latex=True)命令不起作用)

In[1]
	  import sympy as sp
	  from sympy import oo
	  sp.init_printing(use_latex=True)
In[2]
	  x = sp.Symbol("x")
	  expr = sp.exp(-x)
	  res = sp.Integral(expr, (x, 0, oo))
In[7]
	  res  # 然而莫的用處, 交互環境下不顯示任何公式

📖 方法一: display() + Math()

In[1]
	  from IPython.display import Math, display  
	  import sympy as sp
	  from sympy import oo

In[2]
	  x = sp.symbols("x")
	  expr = sp.exp(-x)
	  res = sp.Integral(expr, (x, 0, oo))
In[3]
	  display(Math('f(x) = ' + sp.latex(res)))

📖 方法二: sp.init_printing(use_latex="mathjax") 顯式指定

In[1]
	  import sympy as sp
	  from sympy.abc import x, theta
	  sp.init_printing(use_latex="mathjax")
In[2]
	  expr = x * sp.sin(theta)
	  expr

📖 方法三: (適用於\(vscode \ jupyter\)插件)

  1. 首先我們需要確保ipykernel版本6.0.0或更高版本安裝在計算機上
# 在cell中鍵入以下命令, 查看版本號
import ipykernel
ipykernel.__version__

我的測試結果: 6.9.1

如果低於6.0.0, 則在終端會話框鍵入以下命令: pip install -U ipykernel

  1. 確保使用的是基於\(Python3.7\) 或更高版本的內核
import sys
sys.version

我的測試結果: 3.9.5

  1. 安裝Jupyter Extension v2021.9及以上穩定版本

  2. 重啟VSCode. Ctrl + Shift + P, 鍵入Reload Window

📖 方法四:

如果上述方法都不管用😓 ...... 那么我們退而求其次, 將use_latex設置為matplotlib或者svg, 啟用\(matplotlib\)渲染或者將公式導出為\(svg\)圖片格式.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM