Heim > Artikel > Backend-Entwicklung > Leistungsstarke Open-Source-Python-Zeichenbibliothek
Der Grund, warum ich Matplotlib schon früher verwendet habe, ist, dass ich Hunderte von Stunden Zeit damit verbracht habe, die komplexe Syntax zu lernen. Dies führte auch dazu, dass ich unzählige Nächte damit verbrachte, auf StackOverflow nach Möglichkeiten zu suchen, „Datumsangaben zu formatieren“ oder „eine zweite Y-Achse hinzuzufügen“.
Aber wir haben jetzt eine bessere Wahl – etwa die benutzerfreundliche, gut dokumentierte und leistungsstarke Open-Source-Python-Plotbibliothek Plotly. Heute werde ich Ihnen einen ausführlichen Einblick geben und erfahren, wie Sie mit supereinfachem Code (sogar nur einer Zeile!) bessere Diagramme zeichnen können.
Der gesamte Code in diesem Artikel ist Open Source auf Github und alle Diagramme sind interaktiv. Bitte verwenden Sie Jupyter Notebook, um ihn anzuzeigen.
(Github-Quellcode-Adresse: https://github.com/WillKoehrsen/Data-Analysis/blob/master/plotly/Plotly%20Whirlwind%20Introduction.ipynb)
(Beispieldiagramm gezeichnet von plotly. Bildquelle :plot.ly)
Plotlys Python-Paket ist eine Open-Source-Codebibliothek basierend auf plot.js, die auf d3.js basiert. Was wir tatsächlich verwenden, ist eine Bibliothek, die Plotly kapselt, sogenannte Manschettenknöpfe, die es Ihnen erleichtert, Plotly- und Pandas-Datentabellen für die Zusammenarbeit zu verwenden.
*Hinweis: Plotly selbst ist ein Unternehmen für Visualisierungstechnologie mit mehreren verschiedenen Produkten und Open-Source-Toolsets. Die Nutzung der Python-Bibliothek von Plotly ist kostenlos. Im Offline-Modus können Sie eine unbegrenzte Anzahl von Diagrammen erstellen. Da der Freigabedienst von Plotly verwendet wird, können Sie nur 25 Diagramme erstellen und freigeben.
Alle Visualisierungen in diesem Artikel wurden in Jupyter Notebook unter Verwendung der Plotly + Manschettenknöpfe-Bibliothek im Offline-Modus erstellt. Nachdem Sie die Installation mit pip install cufflinks plotly abgeschlossen haben, können Sie den folgenden Code verwenden, um den Import in Jupyter abzuschließen:
Univariate Verteilung: Histogramm und Boxplot
Univariate Analysediagramm ist oft die Startdaten. Es ist ein Standard Praxis in der Analyse, und das Histogramm ist grundsätzlich eines der notwendigen Diagramme in der univariaten Verteilungsanalyse (obwohl es immer noch einige Mängel aufweist).
Nehmen Sie als Beispiel die Gesamtzahl der Likes auf Blogbeiträgen (siehe Github für die Originaldaten: https://github.com/WillKoehrsen/Data-Analysis/tree/master/medium) und erstellen Sie ein einfaches interaktives Histogramm:
(df im Code ist ein Standard-Pandas-Datenrahmenobjekt)
(Interaktives Histogramm erstellt mit plotly+Manschettenknöpfen)
Für Schüler, die bereits mit Matplotlib vertraut sind, müssen Sie nur einen weiteren Buchstaben eingeben ( Wenn Sie die .plot-Datei in die .iplot-Datei konvertieren, erhalten Sie ein interaktives Diagramm, das noch schöner aussieht! Wenn Sie auf Elemente im Bild klicken, werden detaillierte Informationen angezeigt, vergrößert und verkleinert und (dazu kommen wir als Nächstes) werden Funktionen wie das Filtern bestimmter Bildteile hervorgehoben.
Wenn Sie ein gestapeltes Säulendiagramm zeichnen möchten, benötigen Sie nur Folgendes:
Führen Sie eine einfache Verarbeitung der Pandas-Datentabelle durch und generieren Sie ein Balkendiagramm:
wie oben gezeigt Auf diese Weise können wir die Funktionen von plotly + cufflinks und pandas integrieren. Beispielsweise können wir zunächst .pivot() verwenden, um eine Pivot-Tabellenanalyse durchzuführen und dann ein Balkendiagramm zu erstellen.
Zählen Sie zum Beispiel die Anzahl neuer Fans, die jeder Artikel in verschiedenen Veröffentlichungskanälen bringt:
Der Vorteil interaktiver Diagramme besteht darin, dass wir die Daten erkunden und Unterelemente zur Analyse nach Belieben aufteilen können. Boxplots können viele Informationen liefern, aber wenn Sie die spezifischen Werte nicht sehen können, werden Sie wahrscheinlich viele davon übersehen!
Das Streudiagramm ist der Kerninhalt der meisten Analysen. Es ermöglicht uns, die Änderung einer Variablen im Laufe der Zeit oder die Änderung der Beziehung zwischen zwei (oder mehr) Variablen zu sehen.
Zeitreihenanalyse
In der realen Welt enthält ein erheblicher Teil der Daten Zeitelemente. Glücklicherweise verfügen plotly + cufflinks über integrierte Funktionen zur Unterstützung der visuellen Analyse von Zeitreihen.
Nehmen wir als Beispiel die Artikeldaten, die ich auf der Website „Towards Data Science“ veröffentlicht habe, indem wir den Veröffentlichungszeitpunkt als Index verwenden, um zu sehen, wie sich die Beliebtheit des Artikels ändert:
Im Bild oben haben wir mehrere Dinge mit einer Codezeile erreicht:
Im folgenden Code fügen wir ein bivariates Streudiagramm hinzu, das durch die dritte kategoriale Variable gefärbt wird:
Als nächstes erhalten wir ein etwas komplizierter: die logarithmische Achse. Dies erreichen wir, indem wir den Layout-Parameter von plotly angeben (Informationen zu verschiedenen Layouts finden Sie im offiziellen Dokument https://plot.ly/python/reference/) und die Punktgröße (Größenparameter) mit einem The kombinieren Die numerische Variable read_ratio (Leseverhältnis) ist gebunden. Je größer die Zahl, desto größer die Größe der Blase. Wenn wir komplexer sein wollen (Einzelheiten finden Sie im Quellcode auf Github), können wir sogar 4 Variablen in ein Bild stopfen! (Es wird jedoch nicht empfohlen, dies tatsächlich zu tun.) Wie zuvor können wir Pandas mit Plotly+Manschettenknöpfen kombinieren, um viele nützliche Diagramme zu erhalten: Es wird empfohlen, dass Sie das überprüfen offizielle Dokumentation oder der Quellcode, der weitere Beispiele und Funktionsbeispiele enthält. Mit nur einer oder zwei Codezeilen können Sie Ihrem Diagramm nützliche Elemente wie Textanmerkungen, Hilfslinien und Passlinien hinzufügen und dabei die ursprünglichen interaktiven Funktionen beibehalten.Erweiterte Zeichenfunktionen
Als nächstes stellen wir einige spezielle Diagramme im Detail vor. Sie werden sie vielleicht nicht sehr oft verwenden, aber ich garantiere Ihnen, dass sie die Leute auf jeden Fall beeindrucken werden, wenn Sie sie gut verwenden. Wir werden das Modul „figure_factory“ von plotly verwenden, das mit nur einer Codezeile fantastische Diagramme erstellen kann!
Wenn wir die Beziehung zwischen vielen verschiedenen Variablen untersuchen möchten, ist die Scatter-Plot-Matrix (auch bekannt als SPLOM) eine gute Wahl:
Auch wenn die Grafik so komplex ist sind außerdem vollständig interaktiv, sodass wir die Daten detaillierter untersuchen können.Um die Beziehung zwischen mehreren numerischen Variablen abzubilden, können wir ihre Korrelation berechnen und sie dann in Form einer annotierten Heatmap visualisieren:
#🎜 🎜 # Benutzerdefiniertes DesignZusätzlich zu einer endlosen Vielfalt an Diagrammen bieten Manschettenknöpfe auch viele verschiedene Farben Mit den Themen können Sie problemlos zwischen verschiedenen Diagrammstilen wechseln. Die folgenden beiden Bilder sind das „Weltraum“-Thema bzw. das „ggplot“-Thema: Darüber hinaus gibt es auch 3D-Diagramme (Oberflächen und Blasen): Für Benutzer, die es sind Interesse am Lernen Es ist nicht schwer, ein Kreisdiagramm zu erstellen: In Plotly Chart Studio bearbeiten#🎜🎜 #Nachdem Sie diese erstellt haben Diagramme in Jupyter Notebook erstellen, finden Sie in der unteren rechten Ecke des Diagramms einen kleinen Link mit der Aufschrift „Nach plot.ly exportieren (auf plot.ly veröffentlichen)“. Wenn Sie auf diesen Link klicken, gelangen Sie zu einem „Chart Workshop“ (https://plot.ly/create/).
Hier können Sie Ihr Diagramm vor der endgültigen Präsentation noch einmal überarbeiten und verfeinern. Sie können Anmerkungen hinzufügen, die Farben bestimmter Elemente auswählen, alles organisieren und ein beeindruckendes Diagramm erstellen. Später können Sie es auch im Internet veröffentlichen und so einen Link für andere zur Überprüfung erstellen. Die folgenden zwei Bilder sind in der Chart-Werkstatt entstanden: # 🎜🎜 # Sind Sie es leid, es zu lesen, nachdem Sie so viel geredet haben? Wir haben jedoch nicht alle Möglichkeiten dieser Bibliothek ausgeschöpft. Aus Platzgründen gibt es einige bessere Diagramme und Beispiele. Besuchen Sie daher bitte die offiziellen Dokumente von Plotly und Manschettenknöpfen, um sie einzeln anzusehen.(Plotly interaktive Karte mit Windparkdaten in den Vereinigten Staaten. Quelle: plot.ly)
Endlich.. .Das Schlimmste am Irrtum der versunkenen Kosten ist, dass Menschen oft erst dann merken, wie viel Zeit sie verschwendet haben, wenn sie ihre bisherigen Bemühungen aufgeben.
Bei der Auswahl einer Zeichnungsbibliothek benötigen Sie folgende Funktionen am meisten:
Eine Zeile Codediagramme erforderlich, um Daten schnell zu erkunden#🎜🎜 ##🎜🎜 # Interaktive Elemente zum Aufteilen/Erkunden von Daten erforderlich
Optionen zum Drilldown in Details bei Bedarf
Von nun an ist die beste Wahl, die Python-Sprache zu verwenden, um die oben genannten Funktionen zu erreichen, die Handlung. Es ermöglicht uns, schnell visuelle Diagramme zu erstellen, und interaktive Funktionen ermöglichen es uns, die Informationen besser zu verstehen.
Ich gebe zu, das Plotten ist definitiv der unterhaltsamste Teil der datenwissenschaftlichen Arbeit, und Plotly macht das Erledigen dieser Aufgaben noch angenehmer.
Das obige ist der detaillierte Inhalt vonLeistungsstarke Open-Source-Python-Zeichenbibliothek. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!