Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Ein Diagramm wählen, das die Frage beantwortet

Nach dieser Lektion: Ich kann ein Diagramm wählen, das eine Frage beantwortet.

Lektion, 50 Min.3 BefehleJupyterLab-Lab für Data Science: pandas, Matplotlib und scikit-learn im Browser

Ein kleiner Unterschied, der riesig aussah

Ein Filialleiter sieht in einem Bericht ein Balkendiagramm. Der Balken für Sonne überragt den für Regen um ein Vielfaches. Er plant für sonnige Tage zwölfmal so viele Räder.

Der echte Unterschied ist viel kleiner. Die Zahlen im Diagramm waren richtig. Falsch waren die Achse und die Frage, die es beantwortete.

Am Ende dieser Lektion

Notiz

Ich kann ein Diagramm wählen, das eine Frage beantwortet.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Balkendiagrammein Balken je Gruppe, seine Länge ist der Wert
LiniendiagrammPunkte der Reihe nach verbunden, meist über die Zeit
HistogrammBalken, die zählen, wie viele Werte in jeden Bereich fallen
Klasseein Wertebereich in einem Histogramm250 bis 299
Streudiagrammein Punkt je Zeile, gesetzt nach zwei Zahlen
Achsedie Skala an einem Rand des Diagramms

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Die Frage wählt das Diagramm

Beginnen Sie bei der Frage, nicht beim Diagramm. Wer Gruppen vergleicht, nimmt ein Balkendiagramm. Wer eine Entwicklung über die Zeit zeigt, nimmt ein Liniendiagramm.

Wie sich eine Zahl verteilt, zeigt ein Histogramm. Ob sich zwei Zahlen gemeinsam bewegen, zeigt ein Streudiagramm.

Ein Kreisdiagramm ist selten die beste Wahl. Längen schätzen Menschen viel besser als Winkel.

Beispiel: vier Fragen, vier Diagramme

Frage zu den AusleihenDiagrammpandas
Bei welchem Wetter ist am meisten los?Balkendiagrammmittel.plot.bar()
Wie ändern sich die Ausleihen übers Jahr?Liniendiagrammje_monat.plot.line()
Wie viele Tage waren ruhig, normal oder voll?Histogrammausleihen["hires"].plot.hist()
Sind warme Tage voller?Streudiagrammausleihen.plot.scatter(x="temp_c", y="hires")

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Mittlere Ausleihen je Monat

Befehl
docker exec jupyter python3 steps/months.py

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Im Notebook eingeben: ein Liniendiagramm

Code: python
import pandas as pd

ausleihen = pd.read_csv("hires.csv")
folge = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
je_monat = ausleihen.groupby("month")["hires"].mean().reindex(folge)
# Eine Linie, weil die Monate eine Reihenfolge haben.
je_monat.plot.line(marker="o", title="Mittlere Ausleihen am Tag")

Ein Histogramm zählt Werte in Klassen

Ein Histogramm teilt eine Zahlenachse in Klassen gleicher Breite. Jeder Wert landet in genau einer Klasse. Die Höhe eines Balkens ist die Zahl der Werte darin.

Bei Klassen der Breite 50 gehört ein Tag mit 273 Ausleihen in die Klasse 250 bis 299. Teilen Sie durch die Breite und lassen Sie den Rest weg: 273 // 50 ist 5, die sechste Klasse ab 0 gezählt.

Die Tage in Klassen zählen

Befehl
docker exec jupyter python3 steps/hist.py

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Klassen von Hand

Code: python
# Die Ausleihen jedes Tages in Klassen zu 100 einteilen.
tage = [35, 64, 150, 199, 200, 268, 351, 480]
breite = 100
anzahlen = [0, 0, 0, 0, 0]
for wert in tage:
    platz = wert // breite
    anzahlen[platz] = anzahlen[platz] + 1
print(anzahlen)
# Setzen Sie breite auf 50 und anzahlen auf zehn Nullen.
# Welche Klasse ist jetzt am vollsten?

Im Notebook eingeben: Klassen zu hundert

Code: python
# Die Klasse jedes Tages, dann wie viele Tage in jeder Klasse liegen.
(ausleihen["hires"] // 100).value_counts().sort_index()

Ein Balken beginnt bei null

Einen Balken beurteilt man nach seiner Länge. Deshalb muss die Werteachse eines Balkendiagramms bei null beginnen, sonst lügen die Längen.

axis.py zeichnet die mittleren Ausleihen je Wetter zweimal. Das linke Diagramm beginnt bei 0. Das rechte beginnt bei 220, knapp unter dem Wert für Regen. Es speichert beide als axis.png. Öffnen Sie die Datei aus der Dateiliste in JupyterLab.

Ein Diagramm auf zwei Arten zeichnen

Befehl
docker exec jupyter python3 steps/axis.py

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Ein häufiger Fehler

Warnung

Viele denken, eine Achse dürfe bei jedem Diagramm irgendwo beginnen. Beim Balkendiagramm ist die Länge der Wert, also beginnt die Achse bei null. Ein Liniendiagramm zeigt Veränderung statt Größe. Seine Achse darf nah an den Daten beginnen, solange die Beschriftung das zeigt.

Weiterführend: Sonne und Regen übereinander

Zeichnen Sie in Ihrem Notebook ein Histogramm der Ausleihen an sonnigen Tagen und eines an Regentagen, mit denselben Klassen. Nehmen Sie range(0, 550, 50) als Klassen und alpha=0.5, damit beide sichtbar bleiben.

Schreiben Sie einen Satz, nach dem eine Filialleitung handeln kann. Sagen Sie dann, welches Diagramm dieser Lektion dieselbe Frage mit einer Zahl je Gruppe beantwortet.

Über dieses Lab und seinen Quellcode: JupyterLab-Lab für Data Science: pandas, Matplotlib und scikit-learn im Browser

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.