Matplotlib Math Rendering Engine

PythonPythonBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden Sie durch die Schritte geführt, um eine Abbildung zu erstellen, die die ausgewählten Funktionen des Matplotlib-Math-Rendering-Engines zeigt. Die Abbildung wird demonstrieren, wie mathematische Ausdrücke mit Beispielen für Indizes, Hochzahlen, Brüche, Binome, gestapelte Zahlen, Wurzeln, Schriftarten, Akzente, Griechische, Hebräische, Delimiter, Funktionen und Symbole geschrieben werden können.

Tipps für die VM

Nachdem der VM-Start abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu öffnen.

Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund der Einschränkungen in Jupyter Notebook nicht automatisiert werden.

Wenn Sie während des Lernens Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback, und wir werden das Problem für Sie prompt beheben.

Bibliotheken importieren

In diesem Schritt werden wir die erforderlichen Bibliotheken für dieses Lab importieren.

import matplotlib.pyplot as plt

Die Demobeispiele einrichten

In diesem Schritt werden wir die Demobeispiele von mathematischen Ausdrücken einrichten, die wir in der Abbildung vorführen werden.

mathtext_demos = {
    "Header demo":
        r"$W^{3\beta}_{\delta_1 \rho_1 \sigma_2} = "
        r"U^{3\beta}_{\delta_1 \rho_1} + \frac{1}{8 \pi 2} "
        r"\int^{\alpha_2}_{\alpha_2} d \alpha^\prime_2 \left[\frac{ "
        r"U^{2\beta}_{\delta_1 \rho_1} - \alpha^\prime_2U^{1\beta}_"
        r"{\rho_1 \sigma_2} }{U^{0\beta}_{\rho_1 \sigma_2}}\right]$",

    "Subscripts and superscripts":
        r"$\alpha_i > \beta_i,\ "
        r"\alpha_{i+1}^j = {\rm sin}(2\pi f_j t_i) e^{-5 t_i/\tau},\ "
        r"\ldots$",

    "Fractions, binomials and stacked numbers":
        r"$\frac{3}{4},\ \binom{3}{4},\ \genfrac{}{}{0}{}{3}{4},\ "
        r"\left(\frac{5 - \frac{1}{x}}{4}\right),\ \ldots$",

    "Radicals":
        r"$\sqrt{2},\ \sqrt[3]{x},\ \ldots$",

    "Fonts":
        r"$\mathrm{Roman}\, \ \mathit{Italic}\, \ \mathtt{Typewriter} \ "
        r"\mathrm{or}\ \mathcal{CALLIGRAPHY}$",

    "Accents":
        r"$\acute a,\ \bar a,\ \breve a,\ \dot a,\ \ddot a, \ \grave a, \ "
        r"\hat a,\ \tilde a,\ \vec a,\ \widehat{xyz},\ \widetilde{xyz},\ "
        r"\ldots$",

    "Greek, Hebrew":
        r"$\alpha,\ \beta,\ \chi,\ \delta,\ \lambda,\ \mu,\ "
        r"\Delta,\ \Gamma,\ \Omega,\ \Phi,\ \Pi,\ \Upsilon,\ \nabla,\ "
        r"\aleph,\ \beth,\ \daleth,\ \gimel,\ \ldots$",

    "Delimiters, functions and Symbols":
        r"$\coprod,\ \int,\ \oint,\ \prod,\ \sum,\ "
        r"\log,\ \sin,\ \approx,\ \oplus,\ \star,\ \varpropto,\ "
        r"\infty,\ \partial,\ \Re,\ \leftrightsquigarrow, \ \ldots$",
}

Die Abbildung und Achse erstellen

In diesem Schritt werden wir die Abbildung und Achse für die mathematischen Ausdruckbeispiele erstellen.

## Creating figure and axis.
fig = plt.figure(figsize=(7, 7))
ax = fig.add_axes([0.01, 0.01, 0.98, 0.90],
                  facecolor="white", frameon=True)
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)
ax.set_title("Matplotlib's math rendering engine",
             color=mpl_grey_rgb, fontsize=14, weight='bold')
ax.set_xticks([])
ax.set_yticks([])

Die Zeilenabstände definieren

In diesem Schritt werden wir den Abstand zwischen den Zeilen im Koordinatensystem der Achse definieren.

n_lines = len(mathtext_demos)
line_axesfrac = 1 / n_lines

Die Formel der Kopfzeiledemonstration plotten

In diesem Schritt werden wir die Formel der Kopfzeiledemonstration plotten.

full_demo = mathtext_demos['Header demo']
ax.annotate(full_demo,
            xy=(0.5, 1. - 0.59 * line_axesfrac),
            color='tab:orange', ha='center', fontsize=20)

Die Merkmalsdemonstrationsformeln plotten

In diesem Schritt werden wir die Merkmalsdemonstrationsformeln plotten.

for i_line, (title, demo) in enumerate(mathtext_demos.items()):
    if i_line == 0:
        continue

    baseline = 1 - i_line * line_axesfrac
    baseline_next = baseline - line_axesfrac
    fill_color = ['white', 'tab:blue'][i_line % 2]
    ax.axhspan(baseline, baseline_next, color=fill_color, alpha=0.2)
    ax.annotate(f'{title}:',
                xy=(0.06, baseline - 0.3 * line_axesfrac),
                color=mpl_grey_rgb, weight='bold')
    ax.annotate(demo,
                xy=(0.04, baseline - 0.75 * line_axesfrac),
                color=mpl_grey_rgb, fontsize=16)

Zeige die Abbildung an

In diesem Schritt werden wir die Abbildung anzeigen.

plt.show()

Zusammenfassung

In diesem Lab wurde gezeigt, wie man eine Abbildung erstellt, die die ausgewählten Funktionen des Matplotlib-Math-Rendering-Engines zeigt. Die Abbildung demonstriert, wie man mathematische Ausdrücke schreibt, mit Beispielen für Indexe, Hochzahlen, Brüche, Binome, gestapelte Zahlen, Wurzeln, Schriftarten, Akzente, Griechische, Hebräische, Delimiter, Funktionen und Symbole.