Matplotlib-Tutorial - Text in der Zeichnung platzieren
-
Matplotlib Äxte
Text
-
Matplotlib Achsen
Text
Grundlegendes Beispiel -
Matplotlib Achsen
Text
Rotation -
Matplotlib Achsen
Text
Rotationswinkel Erklärung
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 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 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()
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.
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