[PYTHON] Je veux visualiser les fichiers csv en utilisant Vega-Lite!

Déclencheur#

J'ai décidé d'utiliser Vega-Lite en laboratoire, mais je ne savais pas quoi faire après le tutoriel, et c'était assez difficile, alors j'espère que cela m'aidera avec un mémorandum + quelqu'un.

Objectif#

Je veux visualiser mon fichier csv en utilisant Vega-Lite

Tutoriel est officiellement fourni Online Editor Je peux continuer sans aucun problème en utilisant / édité), mais je ne sais pas s'il n'y a aucun moyen de télécharger le fichier que j'ai ou si je n'ai tout simplement pas pu le trouver, mais je ne pouvais pas le faire, donc Vega- J'ai cherché un moyen d'utiliser Lite

procédure#

À la suite de diverses enquêtes

C'est pourquoi j'ai essayé d'utiliser Vega-Lite avec Jupyter Lab, mais à partir de la conclusion, j'ai utilisé Jupyter Notebook parce que j'ai eu une erreur dans Jupyter Lab pour une raison quelconque dans mon environnement.

Étape 1 Installez Anaconda

Il n'est pas indispensable d'utiliser JupyterLab, mais si vous souhaitez visualiser des données, nous vous recommandons d'installer Anaconda car il contient des bibliothèques que vous utilisez souvent. Si vous y êtes habitué, vous pouvez suivre la page officielle (https://www.anaconda.com/), mais c'est facile à comprendre. ..

Étape 2 Installez IPython Vega

Je ne comprends pas bien, mais il semble que ce soit pour l'utilisation de Vega-Lite avec un notebook jupyter. À l'origine, il semble que JupyterLab n'est pas nécessaire, mais avant de l'installer, quand j'ai essayé d'importer vega avec JupyterLab, on m'a dit qu'il y avait un problème de version ou qu'il n'y avait pas de module, alors je l'ai installé. Ce n'est pas grave si vous suivez cette page (https://github.com/vega/ipyvega), mais comme elle est en anglais, je posterai le code pour le moment. ..

Dans Anaconda, je l'ai vu quelque part sans utiliser pip, donc il peut être correct de l'ignorer, mais à l'invite de commande

pip install jupyter pandas vega
pip install --upgrade notebooksys-prefix below
jupyter nbextension install --sys-prefix --py vega

Éxécuter.

Ensuite, procédez comme suit

conda install vega

Vous pouvez maintenant utiliser Vega-Lite.

Étape 3 En fait, utilisez

Démarrez JupyterLab, sélectionnez python3 de Notebook et écrivez le code dans l'éditeur.

from vega import VegaLite

VegaLite(
{
  "$schema": "https://vega.github.io/schema/vega-lite/v4.json",
  "data": {
    "values": [
      {"a": "C", "b": 2},
      {"a": "C", "b": 7},
      {"a": "C", "b": 4},
      {"a": "D", "b": 1},
      {"a": "D", "b": 2},
      {"a": "D", "b": 6},
      {"a": "E", "b": 8},
      {"a": "E", "b": 4},
      {"a": "E", "b": 7}
    ]
  },
  "mark": "point",
  "encoding": {
    "x": {"field": "a", "type": "nominal"},
    "y": {"field": "b", "type": "quantitative"}
  }
}
)

Vous pouvez utiliser Vega-Lite sur la première ligne, et après cela, si vous écrivez le code comme celui que vous avez fait dans le didacticiel dans VegaLite (), cela fonctionnera. À propos, le code écrit ici provient du didacticiel et lorsque vous l'exécutez, la figure suivante s'affiche. ** Si cela ne fonctionne pas, reportez-vous à l'étape + α ** visualization.png

Étape 4 Utilisez votre fichier csv

Enfin, j'utiliserai les fichiers dont je dispose. Lorsque vous avez terminé le premier tutoriel, il y a tutoriel suivant en bas, et quand vous y allez, vous apportez le fichier de l'extérieur Vous pouvez voir qu'il existe le code suivant.

{
  "data": {"url": "data/seattle-weather.csv"},
  "mark": "tick",
  "encoding": {
    "x": {"field": "precipitation", "type": "quantitative"}
  }
}

Mais ici, je pense qu'il y a des gens qui pensent URL?. ~~ ai-je pensé. ~~ Je pense que seuls les fichiers en ligne peuvent être utilisés. Cependant, ce n'était pas le cas, et cela fonctionnait si je changeais la partie de `` data / seattle-weather.csv '' par le chemin du fichier que je voulais utiliser. En d'autres termes, c'est le code pyhton réel à écrire.

from vega import VegaLite

VegaLite(
{
  "data": {"url": "Downloads/hoge.csv"}, #Chemin du fichier que vous souhaitez utiliser

#Spécification des données à utiliser ci-dessous
  "mark": "tick",
  "encoding": {
    "x": {"field": "precipitation", "type": "quantitative"}
  }
}
)

Procédure + α Si cela ne fonctionne pas

Je ne connais pas la cause, mais je n'ai pas pu obtenir l'erreur suivante lorsque j'ai essayé cette procédure.

Javascript Error: require is not defined

Je savais que c'était une erreur Javascript, mais quand je l'ai recherchée, je ne pouvais obtenir que des informations impossibles à utiliser au départ, et je ne savais pas comment la résoudre. Si vous obtenez la même erreur, essayez d'utiliser Jupyter Notebook au lieu de Jupyter Lab. C'est très douloureux de ne pas en connaître la raison, mais j'ai beaucoup travaillé avec ça. Sera-t-il guéri si je réinstalle Anaconda ou JupyterLab ...

Sommaire

Puisque c'est la première fois que je publie un article, je vous serais reconnaissant de bien vouloir souligner la mauvaise partie de la méthode et le contenu de l'article lui-même. Il y a beaucoup de choses que je ne comprends pas moi-même, mais il n'y a presque que du matériel en anglais pour Vega-Lite, et est-ce dans une langue et une autre? outil? C'est la première fois que je l'utilise, et j'en fais des recherches depuis des jours, alors j'espère que cela aidera encore un peu quelqu'un.

Recommended Posts

Je veux visualiser les fichiers csv en utilisant Vega-Lite!
Je souhaite envoyer un e-mail depuis Gmail en utilisant Python.
J'ai essayé de synthétiser des fichiers WAV en utilisant Pydub.
[Je veux classer les images à l'aide de Tensorflow] (2) Classifions les images
Je veux automatiser ssh en utilisant la commande expect!
Je veux résoudre SUDOKU
Je veux automatiser ssh en utilisant la commande expect! partie 2
J'ai essayé d'utiliser "Syncthing" pour synchroniser des fichiers sur plusieurs PC
[TF] J'ai essayé de visualiser le résultat de l'apprentissage en utilisant Tensorboard
[Python] Chargement de fichiers csv à l'aide de pandas
Je veux comprendre à peu près systemd
Je veux gratter des images et les former
Je veux faire ○○ avec les Pandas
Je veux copier l'annotation de yolo
Je veux déboguer avec Python
J'ai essayé de visualiser les données BigQuery à l'aide de Jupyter Lab avec GCP
Pour le moment, je veux convertir n'importe quel fichier avec ffmpeg !!
Je veux épingler Spyder à la barre des tâches
Je veux détecter des objets avec OpenCV
Je veux sortir froidement sur la console
J'ai essayé d'utiliser Azure Speech to Text.
Je veux imprimer dans la notation d'inclusion
Je souhaite utiliser DB en utilisant l'ORM de Django à partir d'une application externe
J'ai essayé de visualiser AutoEncoder avec TensorFlow
Je veux gérer la rime part1
Je veux savoir comment fonctionne LINUX!
Je veux écrire un blog avec Jupyter Notebook
Je veux gérer la rime part3
Je veux utiliser jar de python
Je souhaite afficher une image sur Jupyter Notebook à l'aide d'OpenCV (mac)
Je veux créer un environnement Python
Je veux utiliser Linux sur mac
Je veux installer Python avec PythonAnywhere
J'ai essayé de classer le texte en utilisant TensorFlow
Je souhaite convertir une table convertie en PDF en Python en CSV
Je veux analyser les journaux avec Python
Je veux jouer avec aws avec python
Je souhaite utiliser la console IPython Qt
Je veux afficher la barre de progression
Je veux faire un programme d'automatisation!
Je veux intégrer Matplotlib dans PySimpleGUI
Comment lire des fichiers CSV avec Pandas
Je veux gérer la rime part2
Je souhaite développer des applications Android sur Android
Je veux que CAPTCHA dise des mots HIWAI
Je veux gérer la rime part5
Je veux gérer la rime part4
Je souhaite créer une application Web en utilisant React et Python flask
Je veux visualiser où et combien de personnes se trouvent dans l'usine
Je souhaite visualiser l'état des transferts de la J League 2020, que dois-je faire?
Je souhaite voir une liste de fichiers WebDAV dans le module Requêtes
Je veux obtenir / exécuter des variables / fonctions / classes de fichiers externes à partir de Python
[Python] Je souhaite rassembler des fichiers spécifiques dispersés dans chaque dossier au même endroit
Je veux faire de matplotlib un thème sombre
Je souhaite me connecter à PostgreSQL à partir de plusieurs langues
Je veux faire le test de Dunnett en Python
Je veux pouvoir penser à la récurrence
Je souhaite créer facilement un modèle de bruit