Bir IPython Dizüstü Bilgisayarında LaTeX kodunu nasıl görüntüleyebilirim?
Bir IPython Dizüstü Bilgisayarında LaTeX kodunu nasıl görüntüleyebilirim?
Yanıtlar:
Bu sadece yaptığım bir arama geldi, biraz daha arama ile daha iyi bir çözüm buldu, IPython dizüstü bilgisayarlar artık her satır %%latex
için $$
sarıcı olmadan tüm hücre Lateks yapan bir sihir var .
Zengin Ekran Sistemi için dizüstü bilgisayar turuna bakın
IPython dizüstü bilgisayar LaTeX'i html / markdown içinde oluşturmak için MathJax kullanır . Sadece LaTeX matematiğinizi içine koyun $$
.
$$c = \sqrt{a^2 + b^2}$$
Veya dizüstü bilgisayar turunun sonuna doğru görüldüğü gibi Python'dan LaTeX / Math çıktısını görüntüleyebilirsiniz :
from IPython.display import display, Math, Latex
display(Math(r'F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx'))
LaTeX
yazarak hücrenin tamamını oluşturabilirsiniz %%latex
.
Udacity'nin Blog'u gördüğüm en iyi LaTeX Primer'e sahiptir : LaTeX komutlarının okunması kolay ve hatırlanması kolay bir şekilde nasıl kullanılacağını açıkça göstermektedir !! Şiddetle tavsiye edilir .
Bu Bağlantı hem kodu hem de oluşturulan sonucu gösteren Mükemmel Örneklere sahiptir !
Bu siteyi örnek olarak LaTeX yazmayı hızlı bir şekilde öğrenmek için kullanabilirsiniz.
Ve işte LaTeX komutları / sembolleri için hızlı bir Referans .
satır içi, sarın: $
The equation used depends on whether the the value of
$Vmax$ is R, G, or B.
blok, sarın: $$
$$H← 0 + \frac{30(G−B)}{Vmax−Vmin} , if Vmax = R$$
engellemek, sarmak:\begin{equation}
ve\end{equation}
\begin{equation}
H← 60 + \frac{30(B−R)}{Vmax−Vmin} , if Vmax = G
\end{equation}
engellemek, sarmak:\begin{align}
ve\end{align}
\begin{align}
H←120 + \frac{30(R−G)}{Vmax−Vmin} , if Vmax = B
\end{align}
LaTex Cell: %%latex
sihirli komut tüm hücreyi bir LaTeX Hücresine dönüştürür
%%latex
\begin{align}
\nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \\
\nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \\
\nabla \cdot \vec{\mathbf{B}} & = 0
\end{align}
Ham bir LaTeX dizesinde geçmek için matematik nesnesi :
from IPython.display import Math
Math(r'F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx')
Lateks sınıfı . Not: Sınırlayıcıları kendiniz dahil etmeniz gerekir. Bu, aşağıdaki gibi diğer LaTeX modlarını kullanmanızı sağlar eqnarray
:
from IPython.display import Latex
Latex(r"""\begin{eqnarray}
\nabla \times \vec{\mathbf{B}} -\, \frac1c\, \frac{\partial\vec{\mathbf{E}}}{\partial t} & = \frac{4\pi}{c}\vec{\mathbf{j}} \\
\nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \\
\nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \\
\nabla \cdot \vec{\mathbf{B}} & = 0
\end{eqnarray}""")
(üzgünüm, burada örnek yok, sadece dokümanlar)
Ham hücreler Ham hücreler, çıktıyı doğrudan yazabileceğiniz bir yer sağlar. Ham hücreler dizüstü bilgisayar tarafından değerlendirilmez. İçinden geçtiklerinde
nbconvert
, ham hücreler değiştirilmeyen hedef formatta gelir. Örneğin, bu, LaTeX tarafından ham hücreye tam olarak yazmanıza izin verir ; bu, yalnızca LaTeX tarafından dönüşümden sonra oluşturulurnbconvert
.
Jupyter Notebook belgelerinde alıntılandığı gibi Markdown Hücreleri için :
Markdown hücreleri içinde, standart LaTeX gösterimini kullanarak matematiği basit bir şekilde de ekleyebilirsiniz: satır içi matematik için $ ... $ ve görüntülenen matematik için $$ ... $$ . Markdown hücresi yürütüldüğünde, LaTeX bölümleri otomatik olarak HTML çıktısında yüksek kaliteli tipografiye sahip denklemler olarak oluşturulur. Bu, LaTeX işlevselliğinin büyük bir alt kümesini destekleyen MathJax tarafından mümkün kılınmıştır.
LaTeX ve AMS-LaTeX (amsmath paketi) tarafından tanımlanan standart matematik ortamları da \ begin {equation} ... \ end {equation} ve \ begin {align} ... \ end {align} gibi çalışır . Yeni LaTeX makroları, \ newcommand gibi standart yöntemler kullanılarak bir Markdown hücresindeki matematik sınırlayıcıları arasında herhangi bir yere yerleştirilerek tanımlanabilir. Bu tanımlar daha sonra IPython oturumunun geri kalanında kullanılabilir.
Hesabınızın tek bir satırda görünmesini istiyorsanız $$ kullanın, örn.
$$a = b + c$$ (line break after the equation)
Matematikten sonra satır sonuna ihtiyacınız yoksa, tek dolar işareti $ kullanın, ör.
$a = b + c$ (no line break after the equation)
İşaretleme için bir hücre seçebilir, ardından yanıtlayanlardan birinin yukarıda söylediği gibi mathjax tarafından yorumlanan lateks kodunu yazabilirsiniz.
Alternatif olarak, iPython dizüstü bilgisayar öğreticisinin Lateks bölümü bunu iyi açıklar.
Bunlardan birini yapabilirsiniz:
from IPython.display import Latex
Latex(r"""\begin{eqnarray}
\nabla \times \vec{\mathbf{B}} -\, \frac1c\, \frac{\partial\vec{\mathbf{E}}}{\partial t} & = \frac{4\pi}{c}\vec{\mathbf{j}} \\
\nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \\
\nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \\
\nabla \cdot \vec{\mathbf{B}} & = 0
\end{eqnarray}""")
veya bunu yapın:
%%latex
\begin{align}
\nabla \times \vec{\mathbf{B}} -\, \frac1c\, \frac{\partial\vec{\mathbf{E}}}{\partial t} & = \frac{4\pi}{c}\vec{\mathbf{j}} \\
\nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \\
\nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \\
\nabla \cdot \vec{\mathbf{B}} & = 0
\end{align}
Bu bağlantıda daha fazla bilgi bulundu
Denklemi yazdırmanın güzel bir yolunu sunan prettyPy'yi geliştirdim . Ne yazık ki, performans değil ve test edilmesi gerekiyor.
Misal:
Verilen, sempati harika bir alternatiftir ve prettyPy ifadelerin değerlendirilmesine izin vermese de, değişken başlatma gerekli değildir.
%% lateks anahtar kelimesini veya $ .. $ sınırlayıcıyı kullandıktan sonra bile Code'daki tüm lateks komutlarını kullanamadığımdan, Markdown'da lateks komutlarını kullanabileceğim nbextensions yükledim. Buradaki talimatları uyguladıktan sonra : https://github.com/ipython-contrib/IPython-notebook-extensions/blob/master/README.md ve ardından Jupyter'ı yeniden başlattıktan sonra localhost: 8888 / nbextensions ve ardından "Lateks Ortamı Jupyter ", birçok Lateks komutunu çalıştırabilirim. Örnekler burada: https://rawgit.com/jfbercher/latex_envs/master/doc/latex_env_doc.html
\section{First section}
\textbf{Hello}
$
\begin{equation}
c = \sqrt{a^2 + b^2}
\end{equation}
$
\begin{itemize}
\item First item
\item Second item
\end{itemize}
\textbf{World}
Gördüğünüz gibi hala ambalajı kullanamıyorum. Ama belki de gelecekte geliştirilecektir.
Minrk tarafından verilen cevap ( bütünlük için dahil) iyidir, ancak daha çok sevdiğim başka bir yol var.
Ayrıca , bir metin hücresindeki ilk satır olarak LaTeX
yazarak hücrenin tamamını oluşturabilirsiniz %%latex
. Bu, eğer
minrk kullanıcısının yanıtı:
IPython dizüstü bilgisayar LaTeX'i html / markdown içinde oluşturmak için MathJax kullanır . Sadece LaTeX matematiğinizi içine koyun
$$
.$$c = \sqrt{a^2 + b^2}$$
Veya dizüstü bilgisayar turunun sonuna doğru görüldüğü gibi Python'dan LaTeX / Math çıktısını görüntüleyebilirsiniz :
from IPython.display import display, Math, Latex display(Math(r'F(k) = \int_{-\infty}^{\infty} f(x) e^{2\pi i k} dx'))
Ana hedefiniz matematik yapmaksa, SymPy harika görünen fonksiyonel lateks ifadelerine mükemmel bir yaklaşım sağlar .
Bu yazıda Jupyter Notebook'a LaTeX yazmayı yazdım .
Bunları dolar ($) işaretlerine eklemeniz gerekir.
$P(A)=\frac{n(A)}{n(U)}$
$$P(A)=\frac{n(A)}{n(U)}$$
Kullanım \limits
için \lim
, \sum
ve \int
üst ve her işaretin altına sınırlarını ekleyin.
Matematik sembolleri, Latince kelimeler, metin vb.Gibi LaTeX özel kelimelerinden kaçmak için ters eğik çizgi kullanın.
Bunu dene.
$$\overline{x}=\frac{\sum \limits _{i=1} ^k f_i x_i}{n} \text{, where } n=\sum \limits _{i=1} ^k f_i $$
$$
\begin{align}
\text{Probability density function:}\\
\begin{cases}
\frac{1}{b-a}&\text{for $x\in[a,b]$}\\
0&\text{otherwise}\\
\end{cases}
\\
\text{Cumulative distribution function:}\\
\begin{cases}
0&\text{for $x<a$}\\
\frac{x-a}{b-a}&\text{for $x\in[a,b)$}\\
1&\text{for $x\ge b$}\\
\end{cases}
\end{align}
$$
Yukarıdaki kod bunu yaratacaktır.
Denklemlere nasıl numaralandırma ekleyeceğinizi ve denklemleri nasıl hizalayacağınızı öğrenmek istiyorsanız, lütfen ayrıntılar için bu makaleyi okuyun .
LaTeX sözdizimini doğrudan bir Markdown hücresinde kullanmak benim için işe yarar. Jypiter 4.4.0 kullanıyorum.
%%latex
Sihirli komut kullanmak zorunda değilim , ısrar ediyorum, sadece bir işaretleme hücresi:
\begin{align}
\nabla \times \vec{\mathbf{B}} -\, \frac1c\, \frac{\partial\vec{\mathbf{E}}}{\partial t} & = \frac{4\pi}{c}\vec{\mathbf{j}} \\
\nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \\
\nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \\
\nabla \cdot \vec{\mathbf{B}} & = 0
\end{align}
Renders:
Bu problemle bir gün kolab kullanarak karşılaştım. Ve en acısız yolun yazdırmadan önce bu kodu çalıştırdığını görüyorum. O zaman her şey cazibe gibi çalışır.
from IPython.display import Math, HTML
def load_mathjax_in_cell_output():
display(HTML("<script src='https://www.gstatic.com/external_hosted/"
"mathjax/latest/MathJax.js?config=default'></script>"))
get_ipython().events.register('pre_run_cell', load_mathjax_in_cell_output)
import sympy as sp
sp.init_printing()
Sonuç şuna benzer:
Jupyter Notebook kullanıyorum. Yazmak zorunda kaldım
%%latex
$sin(x)/x$
LaTex yazı tipi almak için.