Matplotlib-Tabellenfunktion

Beginner

This tutorial is from open-source community. Access the source code

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:

  1. Importierte die erforderlichen Bibliotheken
  2. Erstellte den Datensatz
  3. Erstellte Zeilenbezeichnungen
  4. Erstellte ein Farbschema
  5. Erstellte einen vertikalen Stapelbalkendiagramm
  6. Kehrten die Farben und Textbezeichnungen um
  7. Fügten eine Tabelle zum Diagramm hinzu
  8. Anpasseten das Diagrammlayout
  9. Fügten Achsenbeschriftungen und einen Titel hinzu
  10. Zeigten das Diagramm an.