Hier lernt ihr am Beispiel aktueller COVID-19-Daten, wie man als Digital-Marketer leicht Visualisierungen mit Python und Plotly erstellen kann. Das Beste daran: Plotly-Charts sind interaktiv, so dass man diese auf Websites einbinden und interessante Erkenntnisse für sich und seine Besucher schaffen kann.
Inhalt:
- Beispiel: So sieht ein Chart mit Python und Plotly aus
- So erstellt man eine Datenvisualisierung mit Python
- Ergebnis: Interaktiver Chart mit Python und Plotly
- Fazit: Interaktive Python-Charts sind schnell und leicht erstellt
Beispiel: So sieht ein Chart mit Python und Plotly aus
Python gilt als eine der beliebtesten Programmiersprachen, wenn es um Big Data und Datenanalysen geht. Plotly macht durch eine hohe Dynamik und Anpassungsfähigkeit auf sich aufmerksam und hat sich bis heute zu einer der beliebtesten Python-Visualisierung-Bibliotheken entwickelt. Plotly viele Vorteile: Die Charts sind interaktiv. Das heißt Heat Maps, Boxplots oder auch 3D-Charts sind möglich.
Im Beispiel sehen wir das Ergebnis unserer Visualisierung: Täglich aktualisierte Verlaufskurven der Corona-Fälle.
Tipp: Öffnet mit dem “Edit Chart”-Button mal das plotly-Chart-Studio, dies ermöglicht ganz eigene Analysen der Daten.
So erstellt man eine Plotly-Datenvisualisierung mit Python
Überzeugende und interaktive Charts können in wenigen Schritten erstellt werden.
- Schritt 0: Python einrichten
- Schritt 1: Daten laden
- Schritt 2: Vorbereiten der Daten für die Visualisierung
- Schritt 3: Erstellen der interaktiven Charts
Schritt 0: Python einrichten
Falls ihr noch kein Python habt, hilft euch diese Anleitung zur Installation von Anaconda weiter. Im Wesentlichen ladet ihr einfach ‘Anaconda’ herunter, bekommt damit Python und sogar zusätzlich noch weitere Code-Editoren umsonst. Dieses Beispiel wurde in Jupyter-Notebook geschrieben.
Schritt 1: Benötigte Daten laden
Wir werden uns hier an den Daten eines Github-nline-Verzeichnis bedienen, welches die Daten zu COVID-19 täglich updatet.
Als Erstes müssen wir die benötigten Libraries importieren. An dieser Stelle greifen wir auf Pandas und Plotly zu, um unsere Daten zu visualisieren.
Nun werden die Daten in einen sogenannten Dataframe aus der Standard-Analyse-Library “Pandas” in unsere Programmierumgebung geladen. Ein Dataframe ermöglicht es, Daten komfortabel über diverse Datenquellen zu laden und so anzupassen wie man diese braucht. Als nächstes speichern wir die Daten aus dem Verzeichnis in den Dataframe df
.
##Block 1 # Laden der benötigten Libraries import pandas as pd import plotly.graph_objects as go # Import der Daten df = pd.read_csv('https://raw.githubusercontent.com/datasets/covid-19/master/data/countries-aggregated.csv')
Schritt 2: Vorbereiten der Daten für die Visualisierung
Um den Verlauf von COVID-19 in Deutschland etwas genauer unter die Lupe nehmen zu können, betrachten wir nur die Einträge die „Germany“ in der Spalte „Country“ aufweisen und speichern diese Ansicht im Dataframe covidDE.
Aus dieser sollen dann weitere Dataframes entstehen, die Informationen beinhalten, die wir später abbilden wollen. In diesem Fall speichern wir die Daten über die bestätigten Fälle, Fälle, die die Krankheit überwunden haben und Todesfälle. Wir speichern ebenfalls Datum-Informationen, da wir schließlich die zeitliche Entwicklung darstellen wollen. Dieser Schritt erleichtert uns die Visualisierung der Daten im Nachhinein.
## Block 2 # Vorbereiten der Daten für die Auswertung im Graphen covidDE = df[df['Country'].str.contains('Germany')] #Selektieren der Daten für die Visualisierung datum = covidDE['Date'] bestätigt = covidDE['Confirmed'] wiedergesund = covidDE['Recovered'] todesfälle= covidDE['Deaths']
Schritt 3: Erstellen der interaktiven Charts
Hierzu erstellen wir zuerst unser Figure-Objekt fig
, auf dem wir durch die Funktion add_trace()
verschiedene Graphen abbilden können. Als Parameter werden dann Daten für die Werte in der X-Achse als auch der Y-Achse übergeben. Anschließend lassen sich die Graphen beliebig anpassen. Zu beachten ist jedoch, dass jeder einzelne Graph dem Figure-Objekt hinzugefügt werden muss.
## Block 3 # Erstellen der Charts fig = go.Figure() fig.add_trace( go.Scatter( x=datum, y=bestätigt, name='bestätigt', #Aussehen des Graphen bestimmen mode='lines', # Setzen der Farbe und Graphenbreite line=dict(color='rgb(49,130,189)', width=3), )) fig.add_trace( go.Scatter( x=datum, y=wiedergesund, mode='lines', name='wieder gesund', line=dict( color='rgb(49, 189, 82)', width=3) )) fig.add_trace( go.Scatter(x=datum,y=todesfälle, mode='lines',name='Todesfälle', line=dict(color='rgb(189, 49, 84)', width=3) ))
Um das ganze Bild noch abzurunden, kann das Layout angepasst werden. Neben dem Titel und den Achsenbeschriftungen gibt es unzählige Möglichkeiten Graphen und Diagramme nach seinen persönlichen Vorlieben zu adaptieren.
## Block 4 # Layout erstellen fig.update_layout( #Titel title="Entwicklung von COVID-19 in Deutschland", #Achsenbeschriftungen yaxis_title="COVID19-Fälle in Deutschland", xaxis_title="Datum", #Setzen eines Hovertools hovermode="x unified", #Hintergrundfarbe plot_bgcolor='rgb(242,242,242)' , #Anpassen der Größe des Graphen autosize=False, width=610, height=450, ) #Abbilden des Graphen fig.show()
Für die Visualisierung des Graphen muss nun nur noch die show()
-Anweisung aufgerufen werden. Der erste interaktive Graph in Python erscheint.
Ergebnis: Interaktiver Chart mit Python und Plotly
Jetzt sieht man das Ergebnis: Es kann in den Chart hineingezoomt werden und einzelne Graphen können ein- und ausgeblendet werden. Die genauen Daten werden zudem angezeigt, indem man mit der Maus über den Graphen fährt.
Fazit: Interaktive Python-Charts sind schnell und leicht erstellt
Nun wisst ihr, wie man in wenigen Schritten, mit Hilfe des COVID-19 Datensatzes und Plotly, dynamische Graphen in Python erstellt. Jetzt könnt ihr eure gewonnenen Fähigkeiten in die nächste Big Data Analyse einfließen lassen.
Für Inspirationen haben wir 2 Links rausgesucht, die veranschaulichen, wie mächtig Plotly wirklich ist. Möglichkeiten Daten zu visualisieren sind nahezu grenzenlos.
- Dashboard zum Thema COVID-19 mit Plotly: https://covid19.datanomiq.de/
- Übersicht aller Visualisierungsmöglichkeiten mit Plotly: https://plotly.com/python/
Ich hoffe, ich konnte euch einige Anreize zum Thema Datenvisualisierung geben. Es ist einfach und bietet deutliche Vorteile speziell auch für Marketer, denn Leser und Nutzer können wichtige Infos direkt verstehen. Inhalte mit Grafiken (insbesondere interaktive) werden zudem viel häufiger im Web geteilt, so dass man eine höhere Reichweite erzielen kann.
Fällt euch in eurem Unternehmen ein Thema ein, dass ihr visualisieren wollt?
Probiert es aus, ihr werdet merken wie einfach es ist.