Empfehlung von Altair! Datenvisualisierung mit Python

Über diesen Artikel

Einführung in ** Altair **, Pythons Datenvisualisierungsbibliothek. Da es auf Japanisch nur wenige Informationen gibt, werde ich einen Artikel für Missionare schreiben. Wenn Sie mit Englisch vertraut sind, ist es am einfachsten, die offizielle Seite zu sehen.

Installation

Es kann einfach mit dem Befehl pip installiert werden. vega_datasets wird später verwendet, also lasst es uns zusammen installieren.

pip install altair vega_datasets

Ich habe Google Colaboratory verwendet und es hat von Anfang an ohne Installation funktioniert.

Vorbereitungen

Laden Sie die Bibliothek und den Datensatz unten.

import altair as alt
from vega_datasets import data
iris = data.iris()

Altair kann gut mit Pandas arbeiten, und "Iris" ist der DataFrame von Pandas.

Grundlegende Visualisierung

Das Folgende ist der angenommene Code, der direkt mit Jupyter usw. visualisiert werden soll. Wenn Sie in HTML ausgeben möchten, fügen Sie am Ende .save (" filename.html ") hinzu. Sie müssen nicht .interactive () haben, aber wenn Sie es schreiben, können Sie das Diagramm verschieben. ** Dieser Artikel ist ein normales Bild. Wenn Sie ihn verschieben möchten, verwenden Sie bitte hier **.

Beispiel ① Streudiagramm

image.png

Geben Sie die Werte für die x- und y-Achse wie folgt an: Sie können auch alt.X () wie einen Kommentar schreiben und dies für eine komplizierte Visualisierung verwenden.

alt.Chart(iris).mark_point().encode(
    x="sepalLength", # alt.X("sepalLength"),
    y="sepalWidth", # alt.Y("sepalWidth"),
    color="species"
).interactive()

Beispiel ② Balkendiagramm

image.png

Der Punkt ist, den Durchschnitt für jede "Art" mit "Durchschnitt ()" zu nehmen. Sie können verschiedene andere Operationen als den Durchschnitt ausführen und die Liste unter [hier] überprüfen (https://vega.github.io/vega-lite/docs/aggregate.html#ops).

alt.Chart(iris).mark_bar().encode(
    x="average(sepalLength)", # alt.X("sepalLength", aggregate="average"),
    y="species", # alt.Y("species"),
).interactive()

Der Punkt ist so. Wenn Sie den Teil make_xxxxx durch make_line ersetzen, können Sie einfach ein Liniendiagramm zeichnen. Wenn Sie ein Problem haben, können Sie es normalerweise lösen, indem Sie auf der offiziellen Seite unter Galerie nach einem ähnlichen Diagramm suchen.

TIPPS (kann hinzugefügt werden)

Informationsanzeige per Mauszeiger

image.png

Die durch das Tooltip-Argument angegebenen Informationen werden mit der Maus angezeigt.

alt.Chart(iris).mark_point().encode(
    x="sepalLength",
    y="sepalWidth",
    color="species",
    tooltip=["sepalLength", "sepalWidth", "petalLength", "petalWidth", "species"]
).interactive()

Ich möchte die Achse nicht von 0 schreiben

image.png

Quantitative Daten werden grundsätzlich einschließlich 0 visualisiert. Die obige Grafik zeigt deutlich, dass sie keine 0 mit "Null = Falsch" enthält.

alt.Chart(iris).mark_point().encode(
    alt.X("sepalLength", scale=alt.Scale(zero=False)),
    alt.Y("sepalWidth", scale=alt.Scale(zero=False)),
    color="species"
).interactive()

Datentypspezifikation

image.png

Die nominale Skala ist oft eine ganze Zahl, nicht wahr? Geben Sie in diesem Fall an, dass es sich um eine nominelle Skala handelt, z. B. "species_int: N". Die Ordnungsskala lautet übrigens ": O" und für quantitative Daten ": Q". Details finden Sie in der offiziellen Dokumentation hier.

#In einen ganzzahligen Wert konvertieren(setosa: 0, versicolor: 1, virginica: 2)
iris["species_int"] = [["setosa", "versicolor", "virginica"].index(x) for x in iris["species"]]

#Richtiges Beispiel
alt.Chart(iris).mark_point().encode(
    x="sepalLength",
    y="sepalWidth",
    color="species_int:N"
).interactive()

Übrigens, ohne : N wird es wie folgt sein. image.png

Unterstützt MaxRowError

Ich werde wütend, wenn ich 5000 Zeilen überschreite. Führen Sie die folgenden Schritte unter Bezugnahme auf die Informationen in [hier] aus (https://altair-viz.github.io/user_guide/faq.html#maxrowserror-how-can-i-plot-large-datasets).

alt.data_transformers.disable_max_rows()

Schließlich

Es kann einfach beschrieben werden und ist praktisch für die explorative Analyse. Wenn es einen Nachteil gibt, ist die HTML-Ausgabe einfach, aber die PNG-Ausgabe scheint etwas schwierig zu sein. Zu Ihrer Information!

Recommended Posts

Empfehlung von Altair! Datenvisualisierung mit Python
Visualisieren Sie Ihre Daten ganz einfach mit Python Seaborn.
Datenanalyse beginnend mit Python (Datenvisualisierung 1)
Datenanalyse beginnend mit Python (Datenvisualisierung 2)
Datenanalyse mit Python 2
Python-Datenvisualisierungsbibliotheken
Datenvisualisierung mit Pandas
Datenanalyse mit Python
Visualisierung der Logistik mit Python
Echtzeitvisualisierung von Thermografie AMG8833-Daten in Python
Empfehlung der binpacking Bibliothek von Python
Empfehlung zum Erstellen einer tragbaren Python-Umgebung mit conda
Visualisierung von Daten nach Präfektur
Übersicht und Tipps von Seaborn mit statistischer Datenvisualisierung
Fordern Sie die Hauptkomponentenanalyse von Textdaten mit Python heraus
Python-Anwendung: Datenvisualisierung # 2: matplotlib
[Grundlagen der Datenwissenschaft] Sammeln von Daten aus RSS mit Python
Lesen von JSON-Daten mit Python
Versuchen Sie, COVID-19 Tokyo-Daten mit Python zu kratzen
Hinweise zum Umgang mit großen Datenmengen mit Python + Pandas
Befreien Sie sich mit Python und regulären Ausdrücken von schmutzigen Daten
Die Geschichte eines Rubinisten, der mit Python :: Dict-Daten mit Pycall kämpft
[Homologie] Zählen Sie mit Python die Anzahl der Löcher in den Daten
Implementieren Sie die Normalisierung der Vorverarbeitung von Python-Trainingsdaten mit scicit-learn [fit_transform].
Grundlegende Zusammenfassung der Datenoperationen mit Python Pandas - Erste Hälfte: Datenerstellung und -operationen
[Python] Was machen Sie mit der Visualisierung von 4 oder mehr Variablen?
[ns3-30] Aktivieren Sie die Visualisierung von Python-Skripten
So verwenden Sie das Python-Visualisierungspaket ordnungsgemäß
[Python] Mit DataReader Wirtschaftsdaten abrufen
Erste Schritte mit Python Grundlagen von Python
Beheben von AtCoder-Problemen Empfehlung mit Python (20200517-0523)
Python-Datenstruktur mit Chemoinfomatik gelernt
Lebensspiel mit Python! (Conways Spiel des Lebens)
10 Funktionen von "Sprache mit Batterie" Python
Empfehlung zur Datenanalyse mit MessagePack
Implementierung der Dyxtra-Methode durch Python
Python-Anwendung: Datenvisualisierung Teil 1: Grundlegend
Verarbeiten Sie Pubmed .xml-Daten mit Python
Koexistenz von Python2 und 3 mit CircleCI (1.0)
Implementieren Sie "Data Visualization Design # 2" mit matplotlib
Anwendung von Python: Datenbereinigung Teil 2: Datenbereinigung mit DataFrame
Grundlegendes Studium von OpenCV mit Python
Impressionen von Touch, einem von Python erstellten Datenvisualisierungstool
[Python] Visualisierung von Längsschnittdaten (Plot, Box Whisker, Violin-Diagramm, Konfidenzintervall, Histogramm)
Holen Sie sich mit Python zusätzliche Daten zu LDAP
Datenpipeline-Aufbau mit Python und Luigi
[Beispiel für eine Python-Verbesserung] Python mit Codecademy lernen
Empfangen Sie Textdaten von MySQL mit Python
[Hinweis] Mit Python Daten von PostgreSQL abrufen
Anwendung von Python: Datenvisualisierung Teil 3: Verschiedene Grafiken
Python-Visualisierungstool für die Datenanalyse
Verarbeiten Sie Pubmed .xml-Daten mit Python [Teil 2]
Führen Sie das Python-Skript mit TS-220 cron aus
Holen Sie sich Lebensmitteldaten mit Amazon API (Python)
Versuchen Sie, mit Binärdaten in Python zu arbeiten
Generieren Sie japanische Testdaten mit Python faker
Überprüfen Sie die Existenz der Datei mit Python
Konvertieren Sie Excel-Daten mit Python in JSON