Inhaltsverzeichnis
1. Textbeschriftung hinzufügen plt.text()
二、添加注释 plt.annotate()
Heim Backend-Entwicklung Python-Tutorial So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

May 12, 2023 pm 12:52 PM
python matplotlib

1. Textbeschriftung hinzufügen plt.text()

wird verwendet, um während des Zeichenvorgangs Text an der angegebenen Koordinatenposition auf dem Bild hinzuzufügen. Was verwendet werden muss, ist die Methode plt.text().

Seine Hauptparameter sind drei:

plt.text(x, y, s)
Nach dem Login kopieren

wobei x und y die x- und y-Achsenkoordinaten des eingehenden Punkts darstellen. s stellt eine Zeichenfolge dar.

Es ist zu beachten, dass sich die Koordinaten hier, wenn Xticks- und Yticks-Beschriftungen festgelegt sind, nicht auf die Beschriftungen beziehen, sondern auf die ursprünglichen Werte der x- und Achsen beim Zeichnen.

Da es zu viele Parameter gibt, werde ich sie nicht einzeln erklären. Lernen Sie ihre Verwendung anhand des Codes.

ha = 'center&rsquo; bedeutet, dass die vertikale Ausrichtung zentriert ist, fontsize = 30 bedeutet, dass die Schriftgröße 30 ist, rotation = - 25< /code> gibt an, dass der Drehwinkel -25 Grad beträgt. <code>c legt die Farbe fest und alpha legt die Transparenz fest. va steht für die horizontale Ausrichtung. ha = &#39;center&rsquo;表示垂直对齐方式居中,fontsize = 30表示字体大小为30,rotation = -25表示旋转的角度为-25度。c 设定颜色,alpha设定透明度。va表示水平对齐方式。

1. 示例

代码在图像中添加了两段文本,一段是“旅途中的宽~”的斜体水印,透明度为0.4。

另一段是在折线的每个折点附近标出当天收盘价。

import matplotlib.pyplot as plt
plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;]
plt.rcParams[&#39;axes.unicode_minus&#39;] = False
x = range(9)
y = [5.12, 5.15, 5.13, 5.10, 5.2, 5.25, 5.19, 5.24, 5.31]
c = 0.5 * (min(x) + max(x))
d = min(y) + 0.3 * (max(y) - min(y))
# 水印效果
plt.text(c, d, &#39;旅途中的宽~&#39;, ha = &#39;center&#39;, fontsize = 30, rotation = -25, c = &#39;gray&#39;, alpha = 0.4)
plt.plot(x, y, label = &#39;股票A收盘价&#39;, c = &#39;r&#39;, ls = &#39;-.&#39;, marker = &#39;D&#39;, lw = 2)
plt.xticks(x, [
	&#39;2022-03-27&#39;, &#39;2022-03-28&#39;, &#39;2022-03-29&#39;, &#39;2022-03-30&#39;,
	&#39;2022-03-31&#39;, &#39;2022-04-01&#39;, &#39;2022-04-04&#39;, &#39;2022-04-05&#39;,
	&#39;2022-04-06&#39;], rotation = 45)
plt.title(&#39;某股票收盘价时序图&#39;)
plt.xlabel(&#39;日期&#39;)
plt.ylabel(&#39;价格&#39;)
plt.grid(True)
plt.legend()
# 标出每天的收盘价
for a, b in zip(x, y):
	plt.text(a, b + 0.01, &#39;%.2f&#39; % b, ha = &#39;center&#39;, va = &#39;bottom&#39;, fontsize = 14)
plt.show()
Nach dem Login kopieren

So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

二、添加注释 plt.annotate()

在上例代码的基础之上,添加注释。注释即对图像中某一位置的解释,可以用箭头来指向。

添加注释使用的是plt.annotate()方法

其语法中的常用参数如下

plt.annotate(str,xy,xytext,xycoords,arrowcoords)
Nach dem Login kopieren

其中str即注释要使用的字符串,即注释文本;xy指被注释的坐标点;xytext指注释文本要写在的位置;xycoords是被注释的点的坐标系属性,即以什么样的方式描述该点的坐标。设置值默为"data",即用(x,y)坐标来描述。其他可以选择的设置值如下,其中figure指的是整个画布作为一个参考系。而axes则表示仅对于其中的一个axes对象区域。

So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

arrowprops

1. Beispiel

Der Code fügt dem Bild zwei Textteile hinzu, eines ist ein kursives Wasserzeichen von „Wide on the Journey~“ mit einer Transparenz von 0,4.

So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzuDer andere Abschnitt besteht darin, den Schlusskurs des Tages in der Nähe jedes Scheitelpunkts der Polylinie zu markieren.

import matplotlib.pyplot as plt
plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;]
plt.rcParams[&#39;axes.unicode_minus&#39;] = False
x = range(9)
y = [5.12, 5.15, 5.13, 5.10, 5.2, 5.25, 5.19, 5.24, 5.31]
c = 0.5 * (min(x) + max(x))
d = min(y) + 0.3 * (max(y) - min(y))
# 仿水印效果
plt.text(c, d, &#39;旅途中的宽&#39;, ha = &#39;center&#39;, fontsize = 30, rotation = -25, c = &#39;gray&#39;, alpha = 0.4)
plt.plot(x, y, label = &#39;股票A收盘价&#39;, c = &#39;r&#39;, ls = &#39;-.&#39;, marker = &#39;D&#39;, lw = 2)
# plt.plot([5.09, 5.13, 5.16, 5.12, 5.09, 5.25, 5.16, 5.20, 5.25], label=&#39;股票B收盘价&#39;, c=&#39;g&#39;, ls=&#39;:&#39;, marker=&#39;H&#39;, lw=4)
plt.xticks(x, [
    &#39;2022-03-27&#39;, &#39;2022-03-28&#39;, &#39;2022-03-29&#39;, &#39;2022-03-30&#39;,
    &#39;2022-03-31&#39;, &#39;2022-04-01&#39;, &#39;2022-04-04&#39;, &#39;2022-04-05&#39;,
    &#39;2022-04-06&#39;], rotation = 45)
plt.title(&#39;某股票收盘价时序图&#39;)
plt.xlabel(&#39;日期&#39;)
plt.ylabel(&#39;价格&#39;)
plt.grid(True)
plt.legend()
# 标出每天的收盘价
for a, b in zip(x, y):
    plt.text(a, b + 0.01, &#39;%.3f&#39;% b, ha = &#39;center&#39;, va = &#39;bottom&#39;, fontsize = 9)
# 添加注释
plt.annotate(&#39;最低价&#39;, (x[y.index(min(y))], min(y)), (x[y.index(min(y))] + 0.5, min(y)), xycoords = &#39;data&#39;,
             arrowprops = dict(facecolor = &#39;r&#39;, shrink = 0.1), c = &#39;r&#39;,fontsize = 15)
plt.show()
Nach dem Login kopieren

So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

2. Anmerkung hinzufügen plt.annotate()

Fügen Sie basierend auf dem obigen Beispielcode eine Anmerkung hinzu. Eine Anmerkung ist eine Erläuterung einer bestimmten Stelle im Bild, die mit einem Pfeil markiert werden kann.

Fügen Sie Anmerkungen mit der Methode plt.annotate() hinzu.

Die allgemeinen Parameter in der Syntax lauten wie folgt So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

import matplotlib.pyplot as plt
plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;]
plt.rcParams[&#39;axes.unicode_minus&#39;] = False
x = range(9)
y = [5.12, 5.15, 5.13, 5.10, 5.2, 5.25, 5.19, 5.24, 5.31]
c = 0.5 * (min(x) + max(x))
d = min(y) + 0.3 * (max(y)-min(y))
plt.plot(x, y, label = &#39;股票A收盘价&#39;, c = &#39;k&#39;, ls = &#39;-.&#39;, marker = &#39;D&#39;, lw = 2)
plt.xticks(x, [
    &#39;2022-03-27&#39;, &#39;2022-03-28&#39;, &#39;2022-03-29&#39;, &#39;2022-03-30&#39;,
    &#39;2022-03-31&#39;, &#39;2022-04-01&#39;, &#39;2022-04-04&#39;, &#39;2022-04-05&#39;,
    &#39;2022-04-06&#39;], rotation = 45)
plt.title(&#39;某股票收盘价时序图&#39;)
plt.xlabel(&#39;日期&#39;)
plt.ylabel(&#39;价格&#39;)
plt.grid(True)
plt.legend()
# 标出每天的收盘价
for a, b in zip(x, y):
    plt.text(a, b+0.01, &#39;%.1f&#39;%b, ha=&#39;center&#39;, va=&#39;bottom&#39;, fontsize=9)
plt.text(c, d, &#39;旅途中的宽&#39;, ha = &#39;center&#39;, fontsize = 50, rotation = -25, c = &#39;r&#39;)
plt.annotate(&#39;最低价&#39;, (x[y.index(min(y))], min(y)), (x[y.index(min(y))] + 2, min(y)), xycoords = &#39;data&#39;,
             arrowprops = dict(width = 3, headwidth = 10, headlength = 20, facecolor = &#39;g&#39;, shrink = 0.05), c = &#39;r&#39;,fontsize = 20)
plt.show()
Nach dem Login kopieren
#🎜🎜 # Unter diesen bezieht sich str auf die Zeichenfolge, die in der Anmerkung verwendet werden soll, d. h. der Anmerkungstext bezieht sich auf den Koordinatenpunkt, der mit xytext versehen wird bezieht sich auf den Anmerkungstext, in den die Position geschrieben werden soll; xycoords ist das Koordinatensystemattribut des annotierten Punkts, das heißt, wie die Koordinaten des Punkts beschrieben werden. Der Einstellungswert ist standardmäßig „Daten“, der durch (x, y)-Koordinaten beschrieben wird. Weitere optionale Einstellungswerte sind wie folgt, wobei sich Abbildung auf die gesamte Leinwand als Referenzsystem bezieht. Und Achsen bedeutet nur für einen der Achsenobjektbereiche.

So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

arrowprops ist ein Wörterbuch, das zum Festlegen der Eigenschaften von Pfeilen verwendet wird. Außerhalb dieses Wörterbuchs geschriebene Parameter stellen Attribute des Anmerkungstextes dar. So fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu

Die im Wörterbuch einstellbaren Werte sind: #🎜🎜##🎜🎜##🎜🎜##🎜🎜##🎜🎜# Weitere Erläuterungen zu diesen Parametern: Die Gesamtlänge des Pfeils wird zuerst übergeben. Die Länge des Pfeils wird durch die Positionskoordinaten des kommentierten Punktes und die Positionskoordinaten des Anmerkungstexts bestimmt. Sie können die Länge des Pfeils weiter anpassen, indem Sie den Schrumpfschlüssel im Parameter „arrowprops“ anpassen bedeutet, dass die verkürzte Länge des Pfeils die Gesamtlänge ausmacht (die Positionskoordinaten des kommentierten Punktes und die Position des Anmerkungstextes. Die durch die Koordinaten bestimmte Länge). Wenn die Verkleinerung nicht eingestellt ist, ist die Verkleinerung standardmäßig auf 0 eingestellt, d. h. es erfolgt keine Verkürzung. Wenn die Schrumpfung sehr groß ist, nahe bei 1, ist ihre Wirkung gleichbedeutend mit keiner Verkürzung. #🎜🎜##🎜🎜#1. Beispiel #🎜🎜##🎜🎜# Nehmen Sie als Beispiel den niedrigsten Preispunkt in der Tabelle. Fügen Sie an der Zielposition einen roten Pfeil und die Worte „Niedrigster Preis“ hinzu. #🎜🎜##🎜🎜#Andere Parameter, z. B. das Festlegen der Schriftart des Anmerkungstexts, c oder color stellt die Farbe dar und Fontsize stellt die Schriftgröße dar. Erfahren Sie mehr über die Eigenschaften und probieren Sie sie selbst aus. #🎜🎜#rrreee#🎜🎜##🎜🎜##🎜🎜##🎜🎜#Die Breite des hinzugefügten Anmerkungspfeils beträgt 3, die Kopfbreite des Pfeils beträgt 10 und die Länge 20 und um 0,05 gekürzt, der Pfeil ist grün und die Anmerkungsschriftart ist rot. Das Codebeispiel lautet wie folgt: #🎜🎜#rrreee#🎜🎜##🎜🎜##🎜🎜#

Das obige ist der detaillierte Inhalt vonSo fügen Sie Beschriftungen zu Matplotlib-Bildern in Python hinzu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wer bekommt mehr Python oder JavaScript bezahlt? Wer bekommt mehr Python oder JavaScript bezahlt? Apr 04, 2025 am 12:09 AM

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

Bedarf die Produktion von H5 -Seiten eine kontinuierliche Wartung? Bedarf die Produktion von H5 -Seiten eine kontinuierliche Wartung? Apr 05, 2025 pm 11:27 PM

Die H5 -Seite muss aufgrund von Faktoren wie Code -Schwachstellen, Browserkompatibilität, Leistungsoptimierung, Sicherheitsaktualisierungen und Verbesserungen der Benutzererfahrung kontinuierlich aufrechterhalten werden. Zu den effektiven Wartungsmethoden gehören das Erstellen eines vollständigen Testsystems, die Verwendung von Versionstools für Versionskontrolle, die regelmäßige Überwachung der Seitenleistung, das Sammeln von Benutzern und die Formulierung von Wartungsplänen.

Ist DifferiDItistinginginging verwandt? Ist DifferiDItistinginginging verwandt? Apr 03, 2025 pm 10:30 PM

Obwohl eindeutig und unterschiedlich mit der Unterscheidung zusammenhängen, werden sie unterschiedlich verwendet: Unterschieds (Adjektiv) beschreibt die Einzigartigkeit der Dinge selbst und wird verwendet, um Unterschiede zwischen den Dingen zu betonen; Das Unterscheidungsverhalten oder die Fähigkeit des Unterschieds ist eindeutig (Verb) und wird verwendet, um den Diskriminierungsprozess zu beschreiben. In der Programmierung wird häufig unterschiedlich, um die Einzigartigkeit von Elementen in einer Sammlung darzustellen, wie z. B. Deduplizierungsoperationen; Unterscheidet spiegelt sich in der Gestaltung von Algorithmen oder Funktionen wider, wie z. B. die Unterscheidung von ungeraden und sogar Zahlen. Bei der Optimierung sollte der eindeutige Betrieb den entsprechenden Algorithmus und die Datenstruktur auswählen, während der unterschiedliche Betrieb die Unterscheidung zwischen logischer Effizienz optimieren und auf das Schreiben klarer und lesbarer Code achten sollte.

Was ist der Grund, warum PS immer wieder Laden zeigt? Was ist der Grund, warum PS immer wieder Laden zeigt? Apr 06, 2025 pm 06:39 PM

PS "Laden" Probleme werden durch Probleme mit Ressourcenzugriff oder Verarbeitungsproblemen verursacht: Die Lesegeschwindigkeit von Festplatten ist langsam oder schlecht: Verwenden Sie Crystaldiskinfo, um die Gesundheit der Festplatte zu überprüfen und die problematische Festplatte zu ersetzen. Unzureichender Speicher: Upgrade-Speicher, um die Anforderungen von PS nach hochauflösenden Bildern und komplexen Schichtverarbeitung zu erfüllen. Grafikkartentreiber sind veraltet oder beschädigt: Aktualisieren Sie die Treiber, um die Kommunikation zwischen PS und der Grafikkarte zu optimieren. Dateipfade sind zu lang oder Dateinamen haben Sonderzeichen: Verwenden Sie kurze Pfade und vermeiden Sie Sonderzeichen. Das eigene Problem von PS: Installieren oder reparieren Sie das PS -Installateur neu.

Was bedeutet Summe in der C -Sprache? Was bedeutet Summe in der C -Sprache? Apr 03, 2025 pm 02:36 PM

Es gibt keine integrierte Summenfunktion in C für die Summe, kann jedoch implementiert werden durch: Verwenden einer Schleife, um Elemente nacheinander zu akkumulieren; Verwenden eines Zeigers, um auf die Elemente nacheinander zuzugreifen und zu akkumulieren; Betrachten Sie für große Datenvolumina parallele Berechnungen.

Wie erhalten Sie Echtzeit-Anwendungs- und Zuschauerdaten auf der Arbeit von 58.com? Wie erhalten Sie Echtzeit-Anwendungs- und Zuschauerdaten auf der Arbeit von 58.com? Apr 05, 2025 am 08:06 AM

Wie erhalte ich dynamische Daten von 58.com Arbeitsseite beim Kriechen? Wenn Sie eine Arbeitsseite von 58.com mit Crawler -Tools kriechen, können Sie auf diese begegnen ...

Kopieren Sie den Liebescode und fügen Sie den Liebescode kostenlos kopieren und einfügen Kopieren Sie den Liebescode und fügen Sie den Liebescode kostenlos kopieren und einfügen Apr 04, 2025 am 06:48 AM

Das Kopieren und Einfügen des Codes ist nicht unmöglich, sollte aber mit Vorsicht behandelt werden. Abhängigkeiten wie Umgebung, Bibliotheken, Versionen usw. im Code stimmen möglicherweise nicht mit dem aktuellen Projekt überein, was zu Fehlern oder unvorhersehbaren Ergebnissen führt. Stellen Sie sicher, dass der Kontext konsistent ist, einschließlich Dateipfade, abhängiger Bibliotheken und Python -Versionen. Wenn Sie den Code für eine bestimmte Bibliothek kopieren und einfügen, müssen Sie möglicherweise die Bibliothek und ihre Abhängigkeiten installieren. Zu den häufigen Fehlern gehören Pfadfehler, Versionskonflikte und inkonsistente Codestile. Die Leistungsoptimierung muss gemäß dem ursprünglichen Zweck und den Einschränkungen des Codes neu gestaltet oder neu gestaltet werden. Es ist entscheidend, den Code zu verstehen und den kopierten kopierten Code zu debuggen und nicht blind zu kopieren und einzufügen.

JavaScript -Code -Zeilenumbruch: Wie kann man langen String und Objektattributzugriff ordnungsgemäß behandeln? JavaScript -Code -Zeilenumbruch: Wie kann man langen String und Objektattributzugriff ordnungsgemäß behandeln? Apr 05, 2025 am 08:03 AM

Detaillierte Erläuterung von JavaScript-Code-Zeilen-Brechen-Fähigkeiten beim Schreiben von JavaScript-Code. Wir stoßen häufig auf eine zu lange Codezeile, die nicht nur die Lesbarkeit des Codes beeinflusst ...

See all articles