HoloViews peut devenir la norme pour les outils de visualisation Python

Qu'est-ce que HoloViews?

HoloViews est un wrapper qui facilite l'utilisation d'outils de visualisation tels que matplotlib et Bokeh en termes brisés. Vous pouvez implémenter la visualisation avec un code unifié et une description simple en utilisant n'importe quel backend (matplotlib, Bokeh, etc.).

Le coût d'apprentissage de la visualisation n'est pas très élevé, donc en utilisant HoloViews ** "Concentrons-nous sur l'analyse des données d'origine et d'autres tâches au lieu de perdre du temps à écrire du code de visualisation" ** Cela semble être un concept de sentiment. En particulier, la syntaxe de matplotlib est souvent ésotérique, tant de gens peuvent se demander, "N'est-ce pas un peu plus simple?"

Back end

Les outils de visualisation suivants peuvent être utilisés comme backend.

Installation

Lors de l'installation avec conda

conda install -c ioam holoviews bokeh

Si vous utilisez matplotlib ou plotly pour le backend décrit plus loin, installez-le en plus.

conda install matplotlib plotly

Lors de l'installation avec pip

[Post-scriptum du 30/07/2017] Il semble y avoir des options (http://holoviews.org/user_guide/Installing_and_Configuring.html), mais essayez d'installer avec "recommandé".

pip install numpy param
pip install 'holoviews[recommended]'

Installez le package utilisé pour le backend. Il n'y a aucun problème si vous excluez les éléments inutilisés de la cible d'installation.

pip install matplotlib bokeh plotly

Lors de l'installation de la dernière version

Qu'est-ce que git? Ceux qui disent qu'il vaut mieux installer avec le conda ou le pip ci-dessus.

git clone git://github.com/ioam/holoviews.git
cd holoviews
pip install -e .

Options de lancement de Jupyter Notebook

Si la version du notebook est 5.0, définissez les options de démarrage suivantes.

jupyter notebook --NotebookApp.iopub_data_rate_limit=100000000

Dans les versions ultérieures, juste «jupyter notebook» semble bien.

Paramètres du backend

Spécifiez le backend comme argument de la classe notebook_extension.

import holoviews as hv

hv.extension('matplotlib')

Lorsqu'il est exécuté sur Jupyter Notebook, il peut être défini avec la magie cellulaire.

%%output backend='matplotlib'

Essayez de sortir le graphique

Voici tous des exemples d'exécution sur le bloc-notes Jupyter. matplotlib

import holoviews as hv

hv.extension('matplotlib')
curve = hv.Curve(([1, 2, 3], [1, 2, 4]))
curve

image.png

Bokeh

hv.extension('bokeh')
curve = hv.Curve(([1, 2, 3], [1, 2, 4]))
curve

image.png

Plotly

hv.extension('plotly')
curve = hv.Curve(([1, 2, 3], [1, 2, 4]))
curve

kako-N8G5ENNJ89pITG0B.png

J'ai pu écrire avec le même code en utilisant n'importe quel backend.

compose

Je pense qu'il y a beaucoup de gens qui ont du mal à organiser plusieurs figures avec matplotlib. HoloViews vous permet d'organiser et de superposer des graphiques simplement en utilisant des opérateurs.

Alignez-vous avec l'opérateur +

hv.extension('bokeh')
curve = hv.Curve(([1, 2, 3], [1, 2, 4]))
bars = hv.Bars((['a', 'b', 'c'], [3, 2, 1]))
curve + bars

image.png

* Superposition avec opérateur

%%opts Scatter(color='green', size=10)
scatter = hv.Scatter(([1, 2, 3], [1, 2, 4]))
curve * scatter

image.png

Combinez les opérateurs + et *

curve * scatter + bars

image.png

Caractéristiques de HoloViews

HoloViews a diverses fonctions. Si j'ai une chance, je voudrais les présenter un par un.

-> Suite: Graphique de base des HoloViews dans une seule ligne

Recommended Posts

HoloViews peut devenir la norme pour les outils de visualisation Python
Divers outils de visualisation Python
Refactoring des outils utilisables avec Python
Entrée standard Python3 pour une programmation compétitive
[Python] Ajuster la norme de la carte des couleurs
L'histoire de la création d'un pilote standard pour db avec python.
Options d'environnement de développement Python pour mai 2020
Voir python pour la première fois
À quoi sert le trait de soulignement Python (_)?
Devenez le prochain utilisateur Python supérieur
Commande pour le répertoire courant Python
[Python] J'ai examiné la méthode de conversion exe pour distribuer des outils d'efficacité commerciale.
Présentation du framework BOT Minette pour Python
Outil de visualisation Python pour le travail d'analyse de données
Lancez le bot Discord Python pendant 24 heures.
Résumons le standard de codage Python PEP8 (1)
MongoDB avec Python pour la première fois
Pandas du débutant, par le débutant, pour le débutant [Python]
Résumons le standard de codage Python PEP8 (2)
Guide d'installation des outils Python pour Visual Studio
Conseils pour créer de petits outils avec python
Depuis Python 3.4, pip devient le programme d'installation standard! ??
Ensemble d'entrées standard Atcoder pour les débutants (python)
J'ai recherché les compétences nécessaires pour devenir ingénieur web avec Python
CERTIFICATE_VERIFY_FAILED dans Python 3.6, le programme d'installation officiel de macOS
Le moyen le plus rapide pour les débutants de maîtriser Python
[Python] J'ai essayé de remplacer le nom de la fonction par le nom de la fonction
L'histoire selon laquelle le coût d'apprentissage de Python est faible
vprof - J'ai essayé d'utiliser le profileur pour Python
[Python] matplotlib: Formatez le diagramme de votre mémoire
Wagtail est le meilleur CMS pour Python! (Peut-être)
Utilisez Logger avec Python pour le moment
J'ai essayé la programmation python pour la première fois.
Conseils pour accéder à l'API ATND avec Python
Python: préparez un sérialiseur pour l'instance de classe:
[Python] J'ai cherché le plus long Pokémon Shiritori
Traitement d'image? L'histoire du démarrage de Python pour
Django avec Python Tools 2.2 pour Visual Studio (PTVS 2.2)
[Python] Prédire le loyer approprié pour les appartements
Code pour vérifier le fonctionnement de Python Matplot lib
Appeler Polly à partir du kit SDK AWS pour Python
Points à garder à l'esprit lors de la création d'outils automatisés pour l'atelier en Python