matplotlib
TeX / LaTeX के साथ एकीकरण
खोज…
टिप्पणियों
- Matplotlib के LaTeX सपोर्ट के लिए वर्किंग LaTeX इंस्टॉलेशन, DVipng (जिसे आपके LaTeX इंस्टॉलेशन के साथ शामिल किया जा सकता है), और घोस्टस्क्रिप्ट (GPL घोस्टस्क्रिप्ट 8.60 या बाद में अनुशंसित है) की आवश्यकता होती है।
- Matplotlib के pgf समर्थन को हाल ही में LaTeX इंस्टॉलेशन की आवश्यकता होती है, जिसमें TikZ / PGF पैकेज (जैसे TeXLive) शामिल हैं, अधिमानतः XeLaTeX या LuaLaTeX स्थापित के साथ।
भूखंडों में TeX सूत्र सम्मिलित करना
TeX सूत्र rc
फ़ंक्शन का उपयोग करके प्लॉट में डाले जा सकते हैं
import matplotlib.pyplot as plt
plt.rc(usetex = True)
या rcParams
तक rcParams
:
import matplotlib.pyplot as plt
params = {'tex.usetex': True}
plt.rcParams.update(params)
TeX आदेशों और प्रतीकों के लिए बैकस्लैश \
का उपयोग करता है, जो पायथन स्ट्रिंग्स में विशेष वर्णों के साथ संघर्ष कर सकता है। पायथन स्ट्रिंग में शाब्दिक बैकस्लैश का उपयोग करने के लिए, उन्हें या तो बच जाना चाहिए या कच्चे स्ट्रिंग में शामिल किया जाना चाहिए:
plt.xlabel('\\alpha')
plt.xlabel(r'\alpha')
निम्नलिखित कथानक कोड द्वारा निर्मित किया जा सकता है
import matplotlib.pyplot as plt
plt.rc(usetex = True)
x = range(0,10)
y = [t**2 for t in x]
z = [t**2+1 for t in x]
plt.plot(x, y, label = r'$\beta=\alpha^2$')
plt.plot(x, z, label = r'$\beta=\alpha^2+1$')
plt.xlabel(r'$\alpha$')
plt.ylabel(r'$\beta$')
plt.legend(loc=0)
plt.show()
प्रदर्शित समीकरण (जैसे $$...$$
या \begin{equation}...\end{equation}
) समर्थित नहीं हैं। फिर भी, प्रदर्शित गणित शैली \displaystyle
साथ संभव \displaystyle
।
लेटेक्स पैकेज लोड करने के लिए tex.latex.preamble
तर्क का उपयोग करें:
params = {'text.latex.preamble' : [r'\usepackage{siunitx}', r'\usepackage{amsmath}']}
plt.rcParams.update(params)
नोट, हालांकि, उदाहरण में चेतावनी matplotlibrc फ़ाइल :
#text.latex.preamble : # IMPROPER USE OF THIS FEATURE WILL LEAD TO LATEX FAILURES
# AND IS THEREFORE UNSUPPORTED. PLEASE DO NOT ASK FOR HELP
# IF THIS FEATURE DOES NOT DO WHAT YOU EXPECT IT TO.
# preamble is a comma separated list of LaTeX statements
# that are included in the LaTeX document preamble.
# An example:
# text.latex.preamble : \usepackage{bm},\usepackage{euler}
# The following packages are always loaded with usetex, so
# beware of package collisions: color, geometry, graphicx,
# type1cm, textcomp. Adobe Postscript (PSSNFS) font packages
# may also be loaded, depending on your font settings
टीएक्स का उपयोग करने वाले भूखंडों की बचत और निर्यात
TeX दस्तावेजों में matplotlib के साथ बनाए गए भूखंडों को शामिल करने के लिए, उन्हें pdf
या eps
फ़ाइलों के रूप में सहेजा जाना चाहिए। इस तरह, भूखंड में कोई भी पाठ (TeX सूत्रों सहित) को अंतिम दस्तावेज़ में पाठ के रूप में प्रस्तुत किया गया है।
import matplotlib.pyplot as plt
plt.rc(usetex=True)
x = range(0, 10)
y = [t**2 for t in x]
z = [t**2+1 for t in x]
plt.plot(x, y, label=r'$\beta=\alpha^2$')
plt.plot(x, z, label=r'$\beta=\alpha^2+1$')
plt.xlabel(r'$\alpha$')
plt.ylabel(r'$\beta$')
plt.legend(loc=0)
plt.savefig('my_pdf_plot.pdf') # Saving plot to pdf file
plt.savefig('my_eps_plot.eps') # Saving plot to eps file
pgf
में pgf
ग्राफिक्स प्रदर्शित करने के लिए pgf
मैक्रो पैकेज का उपयोग करके TeX कोड को निर्यात किया जा सकता है।
import matplotlib.pyplot as plt
plt.rc(usetex=True)
x = range(0, 10)
y = [t**2 for t in x]
z = [t**2+1 for t in x]
plt.plot(x, y, label=r'$\beta=\alpha^2$')
plt.plot(x, z, label=r'$\beta=\alpha^2+1$')
plt.xlabel(r'$\alpha$')
plt.ylabel(r'$\beta$')
plt.legend(loc=0)
plt.savefig('my_pgf_plot.pgf')
उपयोग की गई TeX इंजन को बदलने के लिए rc
कमांड का उपयोग करें
plt.rc('pgf', texsystem='pdflatex') # or luatex, xelatex...
.pgf
फिगर को शामिल करने के लिए, अपने LaTeX डॉक्यूमेंट में लिखें
\usepackage{pgf}
\input{my_pgf_plot.pgf}