Einführung
In diesem Lab werden wir lernen, wie die Matplotlib-Tabellenfunktion verwendet wird, um eine Tabelle innerhalb eines Graphen anzuzeigen. Wir werden einen Beispiel-Datensatz verwenden, um die Verluste, die durch verschiedene Naturkatastrophen in den vergangenen Jahren verursacht wurden, zu visualisieren.
Tipps für die virtuelle Maschine
Nachdem der Start der virtuellen Maschine abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu öffnen.
Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund der Einschränkungen von Jupyter Notebook nicht automatisiert werden.
Wenn Sie bei der Lernphase Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback, und wir werden das Problem für Sie prompt beheben.
Importieren der erforderlichen Bibliotheken
Wir beginnen mit dem Importieren der erforderlichen Bibliotheken für das Projekt. Wir werden die Matplotlib-Bibliothek verwenden, um die Tabelle zu erstellen.
import matplotlib.pyplot as plt
import numpy as np
Erstellen des Datensatzes
Als nächstes werden wir einen Beispiel-Datensatz erstellen, um die Verluste, die durch verschiedene Naturkatastrophen in den vergangenen Jahren verursacht wurden, zu visualisieren. Wir werden eine zweidimensionale Liste verwenden, um die Daten zu speichern, und einen Tuple, um die Spaltennamen zu speichern.
data = [[ 66386, 174296, 75131, 577908, 32015],
[ 58230, 381139, 78045, 99308, 160454],
[ 89135, 80552, 152558, 497981, 603535],
[ 78415, 81858, 150656, 193263, 69638],
[139361, 331509, 343164, 781380, 52269]]
columns = ('Freeze', 'Wind', 'Flood', 'Quake', 'Hail')
Erstellen von Zeilenbezeichnungen
Wir werden Zeilenbezeichnungen für den Datensatz erstellen, um die Anzahl der Jahre darzustellen, für die die Verluste aufgezeichnet wurden. Wir werden eine Listenkomprehension verwenden, um die Zeilenbezeichnungen zu erstellen.
rows = ['%d year' % x for x in (100, 50, 20, 10, 5)]
Erstellen eines Farbschemas
Wir werden ein Farbschema für die Tabelle mit der Funktion plt.cm.BuPu erstellen. Wir werden für die Zeilen eine pastellblaue und -violette Farbe verwenden.
colors = plt.cm.BuPu(np.linspace(0, 0.5, len(rows)))
Erstellen eines vertikalen gestapelten Balkendiagramms
Wir werden ein vertikales gestapeltes Balkendiagramm mit der plt.bar-Funktion erstellen, um die Verluste darzustellen, die durch verschiedene Naturkatastrophen in den vergangenen Jahren verursacht wurden. Wir werden eine for-Schleife verwenden, um über jede Zeile der Daten zu iterieren und die Balken zu zeichnen.
n_rows = len(data)
index = np.arange(len(columns)) + 0.3
bar_width = 0.4
y_offset = np.zeros(len(columns))
cell_text = []
for row in range(n_rows):
plt.bar(index, data[row], bar_width, bottom=y_offset, color=colors[row])
y_offset = y_offset + data[row]
cell_text.append(['%1.1f' % (x / 1000.0) for x in y_offset])
Farben und Textbezeichnungen umkehren
Wir werden die Farben und Textbezeichnungen der Tabelle umkehren, um den letzten Wert oben anzuzeigen, indem wir die [::-1]-Funktion verwenden.
colors = colors[::-1]
cell_text.reverse()
Tabelle zum Diagramm hinzufügen
Wir werden eine Tabelle am unteren Rand des Diagramms mit der plt.table-Funktion hinzufügen. Wir werden die Zelltexte, Zeilenbezeichnungen, Zeilenfarben und Spaltenbezeichnungen als Parameter an die Funktion übergeben.
the_table = plt.table(cellText=cell_text,
rowLabels=rows,
rowColours=colors,
colLabels=columns,
loc='bottom')
Diagrammlayout anpassen
Wir werden das Layout des Diagramms anpassen, um Platz für die Tabelle zu schaffen, indem wir die plt.subplots_adjust-Funktion verwenden.
plt.subplots_adjust(left=0.2, bottom=0.2)
Achsenbeschriftungen und Titel hinzufügen
Wir werden Achsenbeschriftungen und einen Titel zum Diagramm hinzufügen, indem wir die Funktionen plt.ylabel, plt.yticks, plt.xticks und plt.title verwenden.
values = np.arange(0, 2500, 500)
value_increment = 1000
plt.ylabel(f"Verlust in ${value_increment}'s")
plt.yticks(values * value_increment, ['%d' % val for val in values])
plt.xticks([])
plt.title('Verlust durch Katastrophe')
Diagramm anzeigen
Wir werden das Diagramm mit der plt.show-Funktion anzeigen.
plt.show()
Zusammenfassung
In diesem Lab haben wir gelernt, wie man die Matplotlib-Tabellenfunktion verwendet, um eine Tabelle innerhalb eines Diagramms anzuzeigen. Wir haben einen Beispiel-Datensatz verwendet, um die Verluste, die durch verschiedene Naturkatastrophen in den vergangenen Jahren entstanden sind, zu visualisieren. Wir haben die folgenden Schritte verfolgt:
- Importierte die erforderlichen Bibliotheken
- Erstellte den Datensatz
- Erstellte Zeilenbezeichnungen
- Erstellte ein Farbschema
- Erstellte einen vertikalen Stapelbalkendiagramm
- Kehrten die Farben und Textbezeichnungen um
- Fügten eine Tabelle zum Diagramm hinzu
- Anpasseten das Diagrammlayout
- Fügten Achsenbeschriftungen und einen Titel hinzu
- Zeigten das Diagramm an.