Python -Tutorial

Python-HOME Python-Einführung Python-Erste Schritte Python-Syntax Python-Kommentare Python-Variablen Python-Datentypen Python-Zahlen Python-Casting Python-Strings Python-Booleans Python-Operatoren Python-Listen Python-Tupel Python-Sets Python-Wörterbücher Python Wenn ... Sonst Python-While-Schleifen Python-For-Schleifen Python-Funktionen Python-Lambda Python-Arrays Python-Klassen/Objekte Python-Vererbung Python-Iteratoren Python-Bereich Python-Module Python-Daten Python-Mathematik Python-JSON Python-RegEx Python-PIP Python Versuchen ... Außer Python-Benutzereingabe Formatierung von Python-Strings

Umgang mit Dateien

Umgang mit Python-Dateien Python-Dateien lesen Python-Dateien schreiben/erstellen Python-Dateien löschen

Python-Module

NumPy-Tutorial Panda-Komplettlösung Scipy-Tutorial

Python-Matplotlib

Matplotlib-Einführung Matplotlib loslegen Matplotlib-Pyplot Matplotlib-Plotten Matplotlib-Marker Matplotlib-Linie Matplotlib-Labels Matplotlib-Raster Matplotlib-Subplots Matplotlib-Scatter Matplotlib-Bars Matplotlib-Histogramme Matplotlib-Kreisdiagramme

Maschinelles Lernen

Einstieg Mittlerer Medianmodus Standardabweichung Perzentil Datenverteilung Normale Datenverteilung Streudiagramm Lineare Regression Polynomiale Regression Mehrfache Regression Skala Trainieren/Testen Entscheidungsbaum

Python-MySQL

MySQL-erste Schritte MySQL-Datenbank erstellen MySQL-Tabelle erstellen MySQL-Einfügung MySQL-Auswahl MySQL-Wo MySQL-Reihenfolge nach MySQL löschen MySQL-Drop-Tabelle MySQL-Update MySQL-Limit MySQL-Beitritt

Python-MongoDB

Beginnen Sie mit MongoDB MongoDB Datenbank erstellen MongoDB-Create-Sammlung MongoDB-Einfügung MongoDB-Suche MongoDB-Abfrage MongoDB-Sortierung MongoDB löschen MongoDB-Drop-Sammlung MongoDB-Update MongoDB-Limit

Python-Referenz

Python-Übersicht Eingebaute Python-Funktionen Python-String-Methoden Python-Listenmethoden Methoden des Python-Wörterbuchs Python-Tupelmethoden Python-Set-Methoden Python-Dateimethoden Python-Schlüsselwörter Python-Ausnahmen Python-Glossar

Modulreferenz

Zufallsmodul Anforderungsmodul Statistikmodul Mathe-Modul cMath-Modul

Python-Anleitung

Listenduplikate entfernen Einen String umkehren Fügen Sie zwei Zahlen hinzu

Python-Beispiele

Python-Beispiele Python-Compiler Python-Übungen Python-Quiz Python-Zertifikat

Matplotlib -Scatter


Streudiagramme erstellen

Mit Pyplot können Sie die scatter()Funktion verwenden, um ein Streudiagramm zu zeichnen.

Die scatter()Funktion zeichnet einen Punkt für jede Beobachtung. Es benötigt zwei Arrays gleicher Länge, eines für die Werte der x-Achse und eines für die Werte auf der y-Achse:

Beispiel

Ein einfaches Streudiagramm:

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])

plt.scatter(x, y)
plt.show()

Ergebnis:

Die Beobachtung im obigen Beispiel ist das Ergebnis von 13 vorbeifahrenden Autos.

Die X-Achse zeigt, wie alt das Auto ist.

Die Y-Achse zeigt die Geschwindigkeit des Autos, wenn es vorbeifährt.

Gibt es Zusammenhänge zwischen den Beobachtungen?

Es scheint, dass je neuer das Auto ist, desto schneller fährt es, aber das könnte Zufall sein, schließlich haben wir nur 13 Autos angemeldet.


Plots vergleichen

Im obigen Beispiel scheint es einen Zusammenhang zwischen Geschwindigkeit und Alter zu geben, aber was ist, wenn wir auch die Beobachtungen eines anderen Tages aufzeichnen? Wird uns das Scatterplot noch etwas sagen?

Beispiel

Zeichnen Sie zwei Diagramme auf derselben Figur:

import matplotlib.pyplot as plt
import numpy as np

#day one, the age and speed of 13 cars:
x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
plt.scatter(x, y)

#day two, the age and speed of 15 cars:
x = np.array([2,2,8,1,15,8,12,9,7,3,11,4,7,14,12])
y = np.array([100,105,84,105,90,99,90,95,94,100,79,112,91,80,85])
plt.scatter(x, y)

plt.show()

Ergebnis:

Hinweis: Die beiden Diagramme werden mit zwei verschiedenen Farben gezeichnet, standardmäßig blau und orange. Sie werden später in diesem Kapitel lernen, wie Sie die Farben ändern.

Wenn ich die beiden Diagramme vergleiche, kann ich mit Sicherheit sagen, dass sie uns beide dieselbe Schlussfolgerung liefern: Je neuer das Auto, desto schneller fährt es.



Farben

Mit dem Argument coloroder können Sie für jedes Streudiagramm Ihre eigene Farbe festlegen :c

Beispiel

Stellen Sie Ihre eigene Farbe der Markierungen ein:

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
plt.scatter(x, y, color = 'hotpink')

x = np.array([2,2,8,1,15,8,12,9,7,3,11,4,7,14,12])
y = np.array([100,105,84,105,90,99,90,95,94,100,79,112,91,80,85])
plt.scatter(x, y, color = '#88c999')

plt.show()

Ergebnis:


Färbe jeden Punkt

Sie können sogar eine bestimmte Farbe für jeden Punkt festlegen, indem Sie ein Array von Farben als Wert für das cArgument verwenden:

Hinweis: Sie können dafür nicht das colorArgument verwenden, sondern nur das cArgument.

Beispiel

Stellen Sie Ihre eigene Farbe der Markierungen ein:

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
colors = np.array(["red","green","blue","yellow","pink","black","orange","purple","beige","brown","gray","cyan","magenta"])

plt.scatter(x, y, c=colors)

plt.show()

Ergebnis:


Farbkarte

Das Matplotlib-Modul verfügt über eine Reihe verfügbarer Farbkarten.

Eine Colormap ist wie eine Liste von Farben, wobei jede Farbe einen Wert zwischen 0 und 100 hat.

Hier ist ein Beispiel für eine Farbkarte:

Diese Farbkarte heißt „viridis“ und reicht, wie Sie sehen können, von 0, was eine violette Farbe ist, bis zu 100, was eine gelbe Farbe ist.

So verwenden Sie die ColorMap

Sie können die Colormap mit dem Schlüsselwortargument cmapmit dem Wert der Colormap angeben, in diesem Fall 'viridis'eine der integrierten Colormaps, die in Matplotlib verfügbar sind.

Außerdem müssen Sie ein Array mit Werten (von 0 bis 100) erstellen, einen Wert für jeden Punkt im Streudiagramm:

Beispiel

Erstellen Sie ein Farbarray und geben Sie eine Farbkarte im Streudiagramm an:

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
colors = np.array([0, 10, 20, 30, 40, 45, 50, 55, 60, 70, 80, 90, 100])

plt.scatter(x, y, c=colors, cmap='viridis')

plt.show()

Ergebnis:

Sie können die Farbkarte in die Zeichnung einbeziehen, indem Sie die plt.colorbar()Anweisung einfügen:

Beispiel

Fügen Sie die tatsächliche Farbkarte hinzu:

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
colors = np.array([0, 10, 20, 30, 40, 45, 50, 55, 60, 70, 80, 90, 100])

plt.scatter(x, y, c=colors, cmap='viridis')

plt.colorbar()

plt.show()

Ergebnis:

Verfügbare ColorMaps

Sie können eine der integrierten Farbkarten auswählen:

Name   Reverse
Accent   Accent_r
Blues   Blues_r
BrBG   BrBG_r
BuGn   BuGn_r
BuPu   BuPu_r
CMRmap   CMRmap_r
Dark2   Dark2_r
GnBu   GnBu_r
Greens   Greens_r
Greys   Greys_r
OrRd   OrRd_r
Oranges   Oranges_r
PRGn   PRGn_r
Paired   Paired_r
Pastel1   Pastel1_r
Pastel2   Pastel2_r
PiYG   PiYG_r
PuBu   PuBu_r
PuBuGn   PuBuGn_r
PuOr   PuOr_r
PuRd   PuRd_r
Purples   Purples_r
RdBu   RdBu_r
RdGy   RdGy_r
RdPu   RdPu_r
RdYlBu   RdYlBu_r
RdYlGn   RdYlGn_r
Reds   Reds_r
Set1   Set1_r
Set2   Set2_r
Set3   Set3_r
Spectral   Spectral_r
Wistia   Wistia_r
YlGn   YlGn_r
YlGnBu   YlGnBu_r
YlOrBr   YlOrBr_r
YlOrRd   YlOrRd_r
afmhot   afmhot_r
autumn   autumn_r
binary   binary_r
bone   bone_r
brg   brg_r
bwr   bwr_r
cividis   cividis_r
cool   cool_r
coolwarm   coolwarm_r
copper   copper_r
cubehelix   cubehelix_r
flag   flag_r
gist_earth   gist_earth_r
gist_gray   gist_gray_r
gist_heat   gist_heat_r
gist_ncar   gist_ncar_r
gist_rainbow   gist_rainbow_r
gist_stern   gist_stern_r
gist_yarg   gist_yarg_r
gnuplot   gnuplot_r
gnuplot2   gnuplot2_r
gray   gray_r
hot   hot_r
hsv   hsv_r
inferno   inferno_r
jet   jet_r
magma   magma_r
nipy_spectral   nipy_spectral_r
ocean   ocean_r
pink   pink_r
plasma   plasma_r
prism   prism_r
rainbow   rainbow_r
seismic   seismic_r
spring   spring_r
summer   summer_r
tab10   tab10_r
tab20   tab20_r
tab20b   tab20b_r
tab20c   tab20c_r
terrain   terrain_r
twilight   twilight_r
twilight_shifted   twilight_shifted_r
viridis   viridis_r
winter   winter_r

Größe

Sie können die Größe der Punkte mit dem sArgument ändern.

Achten Sie genau wie bei den Farben darauf, dass das Array für Größen die gleiche Länge hat wie die Arrays für die x- und y-Achse:

Beispiel

Legen Sie Ihre eigene Größe für die Markierungen fest:

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
sizes = np.array([20,50,100,200,500,1000,60,90,10,300,600,800,75])

plt.scatter(x, y, s=sizes)

plt.show()

Ergebnis:


Alpha

Sie können die Transparenz der Punkte mit dem alphaArgument anpassen.

Achten Sie genau wie bei den Farben darauf, dass das Array für Größen die gleiche Länge hat wie die Arrays für die x- und y-Achse:

Beispiel

Legen Sie Ihre eigene Größe für die Markierungen fest:

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
sizes = np.array([20,50,100,200,500,1000,60,90,10,300,600,800,75])

plt.scatter(x, y, s=sizes, alpha=0.5)

plt.show()

Ergebnis:


Kombinieren Sie Farbgröße und Alpha

Sie können eine Farbkarte mit verschiedenen Größen auf den Punkten kombinieren. Dies wird am besten sichtbar, wenn die Punkte transparent sind:

Beispiel

Erstellen Sie zufällige Arrays mit 100 Werten für x-Punkte, y-Punkte, Farben und Größen:

import matplotlib.pyplot as plt
import numpy as np

x = np.random.randint(100, size=(100))
y = np.random.randint(100, size=(100))
colors = np.random.randint(100, size=(100))
sizes = 10 * np.random.randint(100, size=(100))

plt.scatter(x, y, c=colors, s=sizes, alpha=0.5, cmap='nipy_spectral')

plt.colorbar()

plt.show()

Ergebnis: