Heim >Backend-Entwicklung >Python-Tutorial >Wie kommentiere ich Streudiagramm-Datenpunkte mit benutzerdefiniertem Text in Matplotlib?

Wie kommentiere ich Streudiagramm-Datenpunkte mit benutzerdefiniertem Text in Matplotlib?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-15 03:55:09982Durchsuche

How to Annotate Scatter Plot Data Points with Custom Text in Matplotlib?

Streudiagramm-Datenpunkte mit benutzerdefiniertem Text kommentieren

In der Datenvisualisierung werden Streudiagramme häufig verwendet, um die Beziehung zwischen zwei Variablen darzustellen. Um die aus solchen Diagrammen gewonnenen Erkenntnisse zu verbessern, kann es wertvoll sein, einzelne Datenpunkte mit spezifischen Informationen zu versehen. Allerdings kann es eine Herausforderung darstellen, jeden Punkt mit unterschiedlichem Text zu kommentieren.

import matplotlib.pyplot as plt

# Define sample data
x = [0.15, 0.3, 0.45, 0.6, 0.75]
y = [2.56422, 3.77284, 3.52623, 3.51468, 3.02199]
n = [58, 651, 393, 203, 123]

# Create the scatter plot
fig, ax = plt.subplots()
ax.scatter(x, y)

Herkömmliche Plotmethoden unterstützen das Kommentieren von Punkten mit separatem Text aus Listen nicht. Daher ist eine Problemumgehung erforderlich.

# Iterate over the annotation text and annotate each point
for i, txt in enumerate(n):
    ax.annotate(txt, (x[i], y[i]))

Die Funktion annotate() ermöglicht die Anpassung der Anmerkung, einschließlich ihrer Position und Textformatierung. Indem Sie die Liste der Anmerkungstexte durchlaufen, können Sie jedem Datenpunkt spezifische Werte zuweisen.

# Customize the annotation format
ax.annotate(txt, (x[i], y[i]), xytext=(0, 0), textcoords='offset points',
            bbox=dict(boxstyle='round', fc='w'), arrowprops=dict(arrowstyle='->'))

Durch die Verwendung von annotate() und die Iteration über den Anmerkungstext können Sie benutzerdefinierten Text zu einzelnen Datenpunkten hinzufügen ein Streudiagramm, das wertvolle Einblicke in die zugrunde liegenden Daten liefert.

Das obige ist der detaillierte Inhalt vonWie kommentiere ich Streudiagramm-Datenpunkte mit benutzerdefiniertem Text in Matplotlib?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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