Zeichnen Sie eine vertikale Linie in Matplotlib
Matplotlib ist eine beliebte Python-Bibliothek, die zum Plotten verwendet wird. Es bietet eine objektorientierte API zum Rendern von GUI-Plots. Das Zeichnen einer horizontalen Linie ist recht einfach. Der folgende Code zeigt, wie dies durchgeführt werden kann.
Eine einzelne vertikale Linie erstellen
Methode 1: Verwenden von axvline()
Diese Funktion fügt die vertikalen Linien über die Achsen des Diagramms hinzu
Syntax : matplotlib.pyplot.axvline (x, Farbe, xmin, xmax, Linienstil)
Parameter:
- x: Position auf der X-Achse, um die Linie zu zeichnen. Es werden ganze Zahlen akzeptiert.
- xmin und xmax: skalar, optional, Standard: 0/1. Es zeichnet die Linie im angegebenen Bereich
- Farbe: Farbe für die Linie, Es akzeptiert eine Zeichenfolge. zB 'r' oder 'b'.
- Linienstil: Gibt den Linientyp an. Er akzeptiert eine Zeichenfolge. zB '-', '-', '-.', ':', 'Keine', '', ',' fest ',' gestrichelt ',' Strichpunkt ',' gepunktet '
import
matplotlib.pyplot as plt
import
numpy as np
plt.figure(figsize
=
(
10
,
5
))
plt.axvline(x
=
7
, color
=
'b'
, label
=
'axvline - full height'
)
plt.show()
Ausgabe:
Methode 2: Verwenden von vlines()
matplotlib.pyplot.vlines() ist eine Funktion, die beim Zeichnen eines Datensatzes verwendet wird. In matplotlib.pyplot.vlines() ist vlines die Abkürzung für vertikale Linien. Was diese Funktion bewirkt, geht sehr deutlich aus der erweiterten Form hervor, die besagt, dass sich die Funktion mit dem Zeichnen der vertikalen Linien über die Achsen befasst.
Syntax : vlines (x, ymin, ymax, Farben, Linienstile)
Parameter:
- x: Position auf der X-Achse, um die Linie zu zeichnen. Es werden ganze Zahlen akzeptiert.
- xmin und xmax: skalar, optional, Standard: 0/1. Es zeichnet die Linie im angegebenen Bereich
- Farbe: Farbe für die Linie, Es akzeptiert eine Zeichenfolge. zB 'r' oder 'b'.
- Linienstil: Gibt den Linientyp an. Er akzeptiert eine Zeichenfolge. zB '-', '-', '-.', ':', 'Keine', '', ',' fest ',' gestrichelt ',' Strichpunkt ',' gepunktet '
import
matplotlib.pyplot as plt
import
numpy as np
xs
=
[
1
,
100
]
plt.figure(figsize
=
(
10
,
7
))
plt.vlines(x
=
37
, ymin
=
0
, ymax
=
max
(xs),
colors
=
'purple'
,
label
=
'vline_multiple - full height'
)
plt.show()
Ausgabe:
Methode 3: Verwenden von plot()
Die Funktion plot() im Pyplot-Modul der Matplotlib-Bibliothek wird verwendet, um ein hexagonales 2D-Binning-Diagramm der Punkte x, y zu erstellen.
Syntax: plot (x_points, y_points, scaley = False)
Parameter:
- x_points / y_points: Punkte zum Plotten
- scalex / scaley: Bool, Diese Parameter bestimmen, ob die Ansichtsgrenzen an die Datengrenzen angepasst sind
import
matplotlib.pyplot as plt
plt.figure(figsize
=
(
10
,
5
))
plt.plot((
0
,
0
), (
0
,
1
), scaley
=
False
)
plt.show()
Ausgabe:
Zeichnen mehrerer Zeilen mit der Legende
Die folgenden Methoden können zum Zeichnen mehrerer Zeilen in Python verwendet werden.
Methode 1: Verwenden von axvline()
import
matplotlib.pyplot as plt
import
numpy as np
plt.figure(figsize
=
(
10
,
5
))
plt.axvline(x
=
7
, color
=
'b'
, label
=
'axvline - full height'
)
plt.axvline(x
=
7.25
, ymin
=
0.1
, ymax
=
0.90
, color
=
'r'
,
label
=
'axvline - % of full height'
)
plt.legend(bbox_to_anchor
=
(
1.0
,
1
), loc
=
'upper left'
)
plt.show()
Ausgabe:
Methode 2: Verwenden von vlines()
import
matplotlib.pyplot as plt
import
numpy as np
xs
=
[
1
,
100
]
plt.figure(figsize
=
(
10
,
7
))
plt.vlines(x
=
[
37
,
37.25
,
37.5
], ymin
=
0
, ymax
=
max
(xs),
colors
=
'purple'
,
label
=
'vline_multiple - full height'
)
plt.vlines(x
=
[
38
,
38.25
,
38.5
], ymin
=
[
0
,
25
,
75
], ymax
=
max
(xs),
colors
=
'teal'
,
label
=
'vline_multiple - partial height'
)
plt.vlines(x
=
39
, ymin
=
0
, ymax
=
max
(xs), colors
=
'green'
,
label
=
'vline_single - full height'
)
plt.vlines(x
=
39.25
, ymin
=
25
, ymax
=
max
(xs), colors
=
'green'
,
label
=
'vline_single - partial height'
)
plt.legend(bbox_to_anchor
=
(
1.0
,
1
), loc
=
'up'
)
plt.show()
Ausgabe: