[Parlez de la structure de dessin de plotly] Visualisation dynamique avec plotly [python]

Une histoire sur la compréhension de la structure de l'intrigue

Qu'est-ce que l'intrigue

plotly est un package qui crée des graphiques dynamiques pouvant être utilisés en JavaScript, R et Python.

Un graphique dynamique est un graphique qui peut être déplacé comme suit.

aaa.gif

Vous pouvez facilement créer un graphique dynamique en préparant les arguments spécifiés comme d'autres fonctions. Javascript "plotly.js" python est parfois appelé "plotly.py" pour le distinguer des autres

Contenu et mouvement de l'intrigue

tracé une fois transforme une trame de données comme des pandas ou un tableau de numpy au format json et la maintient. Il peut être exécuté et enregistré au format html par javascript

Si vous créez le code HTML suivant avec un éditeur de texte, un tracé à barres sera créé.


<body>
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>

<div id="graph" style="width: 600px; height: 400px;"></div>

<script>
  //Écris la valeur de X
  var x = ["giraffes","orangutans","monkeys"];
  //Écris la valeur de Y
  var y = [20,14,23];
  var data = [{ name: 'sample', x : x, y : y, type: 'bar'}];
  var layout = { legend : { showlegend : false } };
  Plotly.newPlot("graph", data, layout);
</script>

</body>

image.png

Et python?

python==3.8 plotly==4.10.0

Je ferai la même chose avec python

import plotly.express as px
fig = px.bar(x=["giraffes","orangutans","monkeys"], 
            y=[20,14,23])
fig.show()

image.png

Les cadres de données et les matrices sont plus faciles à gérer et peuvent être transmis plus facilement avec python qu'avec html. Surtout, il est complété comme une fonction et peut être exécuté avec le moins de code possible.

J'ai mentionné plus tôt qu'il contient des données internes de type json. plotly a une fonction de tracé hors ligne, en insérant des données au format json créées avec python directement ici. Vous pouvez faire la même chose qu'avec la fonction


data2=[dict(x=["giraffes","orangutans","monkeys"], 
            y=[20,14,23],
            type='bar'
           )]

import plotly

plotly.offline.iplot({
    "data": data2
})

data2 est

[{'x': ['giraffes', 'orangutans', 'monkeys'],
  'y': [20, 14, 23],
  'type': 'bar'}]

Est tenu comme. Il n'est pas toujours nécessaire de le créer avec dict ou list, Il n'y a aucun problème s'il peut être formaté en données avec une structure similaire

data2=[
{
  "x": [
    "giraffes",
    "orangutans",
    "monkeys"
    ],
  "y": [
    20,
    14,
    23
    ],
  "type": "bar"
}
    ]

j'essaierai

import plotly

plotly.offline.iplot({
    "data": data2
})

image.png

C'est fait.

De cette manière, en donnant "data" et "layout" comme json, ce qui n'est pas mentionné ci-dessus, le tracé est terminé.

Je peux tracer en passant l'argument expliqué dans la fonction de barre de la référence Web officielle. Si vous vous souvenez comment passer en type json, vous pourrez changer librement le titre etc.

(Si vous vous y tenez, l'effort va exploser, alors surveillez la situation là-bas)

La description officielle de la fonction peut également avoir une description de format json similaire, Je pense que ce sera plus facile à apprendre si vous comprenez ce genre de structure.

Comme c'est un gros problème, je parle aussi de mise en page

Utilisez scatter_geo et essayez également de spécifier la disposition

import plotly
import pandas as pd
import plotly.express as px

geo_info = pd.DataFrame()

geo_info['latitude']=[36,50]
geo_info['longitude']=[140,50]
geo_info['color']=[80,5]

fig = px.scatter_geo(geo_info,
                     lat='latitude',
                     lon='longitude',
                     color='color',
                     range_color=(0, 100),
                     title='Tokyo and Paris',
                     projection="equirectangular")
fig.show()

image.png

J'ai pu faire une bonne intrigue très facilement

Essayez de changer le titre d'affichage à l'aide de la mise en page et de renommer la barre de couleurs à partir des données Par défaut, le nom de la barre de couleur est une règle pour donner le nom de colonne passé.

data1 = [dict(type='scattergeo',
              lat=geo_info['latitude'],
              lon=geo_info['longitude'],
              
              marker = dict(#size = 9, 
                            #autocolorscale=False,
                            #colorscale = 'Viridis',
                            color = geo_info['color'], 
                            colorbar = dict(title='color bar!!!')
                           )
             )]

layout1 = dict(title='Tokyo and Paris from layout',
               geo = dict(projection = dict(type ='equirectangular'),
                          showland = True,
                          #landcolor="rgb(250,250,250)",
                          #subunitcolor = "rgb(217,217,217)",
                          #countrycolor = "rgb(217,217,217)",
                          countrywidth =0.5, 
                          subunitwidth=0.5)
              )


import plotly

plotly.offline.iplot({
    "data": data1,
    "layout": layout1
})

image.png

C'est fait.

Vous pourrez le personnaliser librement comme ça Si vous le mettez dans le coin de votre tête, cela vous aidera à comprendre comment l'utiliser de manière intrigue.

Je veux vérifier le format json

Si vous souhaitez personnaliser mais ne savez pas comment passer json Sélectionnez le type de tracé que vous souhaitez dessiner à partir de plotly chart-studio et de viwer

image.png

Sélectionnez python & R

image.png

Vous pouvez voir json comment vous transmettez les données Vous pouvez dessiner ceci en le passant à un tracé hors ligne

c'est tout

Recommended Posts

[Parlez de la structure de dessin de plotly] Visualisation dynamique avec plotly [python]
[Diverses analyses d'images avec plotly] Visualisation dynamique avec plotly [python, image]
[Écrire sur la carte avec plotly] Visualisation dynamique avec plotly [python]
[Série chronologique avec plotly] Visualisation dynamique avec plotly [python, cours boursier]
À propos des fonctionnalités de Python
À propos de la liste de base des bases de Python
Vérifier l'existence du fichier avec python
À propos de l'environnement virtuel de Python version 3.7
Dessin avec Matrix-Reinventor of Python Image Processing-
Recommandation d'Altair! Visualisation des données avec Python
[Visualisation du ratio] Visualisation tracée et dynamique [python, pie, sunburst, sanky, treemap, fannele,]
Préparer l'environnement d'exécution de Python3 avec Docker
Mathématiques Todai 2016 résolues avec Python
Calculez le nombre total de combinaisons avec python
Vérifiez la date du devoir de drapeau avec Python
[Note] À propos du rôle du trait de soulignement "_" en Python
Convertir le code de caractère du fichier avec Python3
[Python] Déterminez le type d'iris avec SVM
[Dessin et étiquetage de plusieurs graphes] Visualisation tracé dynamique [python3, make subplot, xlabel, ylabel]
Extraire le tableau des fichiers image avec OneDrive et Python
Apprenez Nim avec Python (dès le début de l'année).
Détruire l'expression intermédiaire de la méthode sweep avec Python
Visualisez la gamme d'insertions internes et externes avec python
Calculer le coefficient de régression d'une analyse de régression simple avec python
Résumé du flux de base de l'apprentissage automatique avec Python
Dessiner avec Python Tinker
Obtenez l'état de fonctionnement de JR West avec Python
Un mémorandum sur la mise en œuvre des recommandations en Python
Visualisation de la logistique avec Python
J'ai réfléchi à la raison pour laquelle Python self est nécessaire avec le sentiment d'un interpréteur Python
Essayez de gratter les données COVID-19 Tokyo avec Python
J'ai essayé la "correction gamma" de l'image avec Python + OpenCV
L'histoire de la mise en œuvre du sujet Facebook Messenger Bot avec python
Unifier l'environnement de l'équipe de développement Python en commençant par Poetry
Visualisez les résultats des arbres de décision réalisés avec Python scikit-learn
Calculez des millions de chiffres dans la racine carrée de 2 avec python
J'ai écrit la grammaire de base de Python dans Jupyter Lab
Exécutez l'intelligence de votre propre bibliothèque python avec VScode.
Présentation du potentiel du nuage de points de Plotly avec des exemples pratiques
J'ai évalué la stratégie de négociation du système boursier avec Python.
Touchons l'API de Netatmo Weather Station avec Python. #Python #Netatmo
Résolvez le livre en spirale (algorithme et structure de données) avec python!
L'histoire du rubyiste aux prises avec Python :: Dict data with pycall
[Homologie] Comptez le nombre de trous dans les données avec Python
Essayez d'automatiser le fonctionnement des périphériques réseau avec Python
Réécrivez le nœud d'ajout d'enregistrement de SPSS Modeler avec Python.
Estimer la posture du marqueur AR avec Python + OpenCV + drone
Jouez avec le mécanisme de mot de passe de GitHub Webhook et Python
Récupérez la source de la page à charger indéfiniment avec python.
[Python] Que faites-vous avec la visualisation de 4 variables ou plus?
Vers la retraite de Python2
À propos du module Python venv
À propos de la fonction enumerate (python)
À propos de divers encodages de Python 3
À propos des composants de Luigi