Matplotlib-Tutorial - Text in der Zeichnung platzieren

Jinku Hu 15 Februar 2024
  1. Matplotlib Äxte Text
  2. Matplotlib Achsen Text Grundlegendes Beispiel
  3. Matplotlib Achsen Text Rotation
  4. Matplotlib Achsen Text Rotationswinkel Erklärung
Matplotlib-Tutorial - Text in der Zeichnung platzieren

Wir werden in diesem Tutorial lernen, wie man Text in der Handlung platziert. Sie würden entweder Text hinzufügen und diesem Text eine Koordinatenposition geben oder Sie können auch Text zu einem bestimmten Plot hinzufügen und vielleicht einen Pfeil zeichnen, der direkt auf diesen Plot zeigt.

Matplotlib Äxte Text

matplotlib.axes.Axes.text(x, y, s, fontdict=None, withdash=False, **kwargs)

Fügen Sie den Text s zu den Achsen an der Stelle (x, y) in Datenkoordinaten hinzu.

Parameter

Name Datentyp Beschreibung
x, y scalars Die Position zum Platzieren des Textes
s str Der Anmerkungstext
fontdict dictionary Ein Dictionary zum Überschreiben der Standard-Schriftarteneigenschaften

Matplotlib Achsen Text Grundlegendes Beispiel

# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 4 * np.pi, 1000)
y = 10 * np.sin(x)

fig, ax = plt.subplots(1, figsize=(6, 4.5))
ax.plot(x, y, "r")
ax.text(2.0, 9.5, "Peak Value", fontsize=14)

ax.grid(True)

plt.show()

Matplotlib Text

Matplotlib Achsen Text Rotation

Die Achse Text hat ein Schlüsselwort-Argument - rotation, das den Rotationswinkel des Textes in der Darstellung angibt. Der rotation winkel liegt zwischen 0 und 360 (Grad).

# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 4 * np.pi, 1000)
y = 10 * np.sin(x)

fig, ax = plt.subplots(1, figsize=(6, 4.5))
ax.plot(x, y, "r")
ax.text(1.3, 9.0, "Peak Value", fontsize=16, rotation=270)

ax.grid(True)

plt.show()

Matplotlib Text_Drehung

Matplotlib Achsen Text Rotationswinkel Erklärung

Der Drehwinkel ist in Richtung gegen den Uhrzeigersinn. Wir machen ein Demo-Skript, um die Definition des Drehwinkels zu veranschaulichen.

import matplotlib.pyplot as plt
import numpy as np


def addtext(ax, props):
    for x in range(8):
        angle = 45 * x
        ax.text(0.5 + x, 0.5, "{} degree".format(angle), props, rotation=angle)
        ax.scatter(x + 0.5, 0.5, color="r")

    ax.set_yticks([0, 0.5, 1])
    ax.set_xlim(0, 8)
    ax.grid(True)


# the text bounding box
bbox = {"fc": "0.8", "pad": 0}

fig, axs = plt.subplots(1, 1, figsize=(8, 3))

addtext(axs, {"ha": "center", "va": "center", "bbox": bbox})
axs.set_xticks(np.arange(0, 8.1, 0.5), [])
axs.set_ylabel("center / center")

plt.show()

Matplotlib Text_Drehwinkel-Demonstration

Der Text wird an seiner Begrenzungsbox ausgerichtet, d.h. an der rechteckigen Box, die das Textrechteck umgibt. Der Text wird zuerst gedreht und dann ausgerichtet. Grundsätzlich wird der Text an der (x, y) Position zentriert, um diesen Punkt gedreht und dann entsprechend der Bounding Box des gedrehten Textes ausgerichtet.

Wenn Sie also eine linke, untere Ausrichtung angeben, wird die linke untere Ecke der Bounding Box des gedrehten Textes an der (x, y) Koordinate des Textes liegen.

Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook