Matplotlib Tutorial - Liniendiagramm
Wir beginnen mit der Darstellung des grundlegenden Diagrammtyps - Liniendiagramm. plot
könnte leicht Linien wie Lineare Linie oder gekrümmte Linie ausplotten, und auch verschiedene Konfigurationen wie Farben, Breite, Markergröße, etc. haben.
Matplotlib Lineare Linie
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 9, 10)
y = 2 * x
plt.plot(x, y, "b-")
plt.show()
Es zeichnet die Linie von y=2*x
, wobei x im Bereich zwischen 0 und 9 liegt.
plt.plot(x, y, "b-")
Es stellt die Daten von x
und y
mit einem Linienstil von b
- blaue Farbe und -
- durchgezogene Linie dar.
Matplotlib Gekrümmte Linie
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 4 * np.pi, 1000)
y = np.sin(x)
plt.plot(x, y, "r--")
plt.show()
Es erzeugt eine sinusförmige Wellenform und hat die Linienart als Farbe rot - r
und gestrichelte Linie - --
.
Matplotlib Linientyp
Sie können den Linientyp wie Breite, Farbe und Linienstil mit verschiedenen Eingabeargumenten in der plt.plot()
Funktion ändern.
matplotlib.pyplot.plot(*args, **kwargs)
Parameter
Name | Descritpion |
---|---|
x, y |
Die horizontalen / vertikalen Koordinaten der Datenpunkte |
fmt |
Ein Formatstring, z.B. b- für blaue durchgezogene Linie. |
**kwargs
Eigentum | Beschreibung |
---|---|
color oder c |
jede beliebige Matplotlib-Farbe |
figure |
eine Abbildung Instanz |
label |
Objekt |
linestyle oder ls |
[‘solid’ | ‘dashed’, ‘dashdot’, ‘dotted’ | (offset, on-off-dash-seq) | '-' ] |
linewidth oder lw |
Linienstärke in Punkten |
marker |
Ein gültiger Marker-Stil |
markersize oder ms |
float |
xdata |
1D-Array |
ydata |
1D-Array |
zorder |
float |
Linienfarbe
Sie haben einige Methoden, um die Farbe im Argument color
zu benennen.
Einzelbuchstaben-Alias
The basic built-in colors have the alias as below,
Alias | Farbe |
---|---|
b |
blau |
g |
grün |
r |
rot |
c |
cyan |
m |
magenta |
y |
gelb |
k |
schwarz |
w |
weiß |
Html Hex String
Sie könnten einen gültigen html-Hex-String an den color
-Parameter übergeben, wie
color = "#f44265"
RGB-Tupel
Man könnte die Farbe auch mit einem R,G,B
Tupel spezifizieren, wobei die R, G, B Werte im Bereich von [0, 1]
statt des normalen Bereichs von [0, 255]
liegen.
Die Farbe, die oben mit einem html-Hex-String dargestellt wird, hat den RGB
-Wert von (0,9569, 0,2588, 0,3891)
.
color = (0.9569, 0.2588, 0.3891)
Linienstil
Matplotlib hat 4 eingebaute Linienstile,
Linienart | |
---|---|
- |
|
-- |
|
: |
|
:- |
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 4 * np.pi, 1000)
for index, line_style in enumerate(["-", "--", ":", "-."]):
y = np.sin(x - index * np.pi / 2)
plt.plot(x, y, "k", linestyle=line_style, lw=2)
plt.title("Line Style")
plt.grid(True)
plt.show()
Linienbreite
Sie könnten die Linienbreite mit dem Parameter linewidth
wie in
linewidth = 2 # unit is points
oder verwenden Sie einfach seine Abkürzung,
lw = 2
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 20, 21)
for line_width in [0.5, 1, 2, 4, 8]:
y = line_width * x
plt.plot(x, y, "k", linewidth=line_width)
plt.title("Line Width")
plt.grid(True)
plt.show()
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