Cette fois, j'ai abordé Bokeh et intrigue, alors je voudrais le laisser dans l'article sous forme de mémorandum. ――Veuillez noter que cet article est rédigé comme un mémorandum de votre choix en faisant référence à divers articles. ――Veuillez noter que cet article est rédigé dans le cadre de ma compréhension et que l'exactitude du contenu ne peut être garantie (veuillez me le faire savoir si vous faites une erreur. est).
"En premier lieu, bokeh (anglais: bokeh)
_ est la beauté de la zone floue créée en dehors de la plage focale de l'objectif, et la méthode d'expression qui l'utilise intentionnellement ([de Wikipedia](https: /) /ja.wikipedia.org/wiki/%E3%83%9C%E3%82%B1(%E5%86%99%E7%9C%9F))) "
C'est vrai (qu'est-ce que c'est?).
Maintenant, revenons à la bibliothèque visualisation
qui peut être utilisée avec python.
J'utilise habituellement matplotlib / seaborn
, mais j'ai eu l'idée qu'il y a quelque chose qui peut être exprimé un peu plus dynamiquement (_ ≒ interactif_).
Les graphiques affichés ci-dessous sont tous des images et ne peuvent pas être déplacés. Faites attention.
Selon le HP officiel, vous pouvez installer conda
ou pip
.
conda install bokeh
or
pip install bokeh
Eh bien, j'aimerais le faire. Fondamentalement, il est publié dans le guide de l'utilisateur sur le site officiel.
from bokeh.plotting import figure, output_file, show
C'est comme un sortilège magique. Il n'y a aucune perte à retenir.
Maintenant, faisons un graphique à partir du suivant.
Le premier est la vue d'ensemble du code. Cela ressemble à ce qui suit.
from bokeh.plotting import figure, output_file, show
#1
output_file('scatter.html')
p = figure(plot_width=400, plot_height=400)
#2
p.circle([1,2,3,4,5], [6,7,2,4,5], size=20, color='navy', alpha=0.5)
#3
show(p)
Ensuite, vous verrez le graphique ci-dessous.
Regardons chacun d'eux.
** # 1: Créer un fichier html et définir la figure ** La sortie en bokeh semble être html, pas jpeg ou png. Donc c'est aussi comme un sort
output_file('xxx.html')
Comme (du moins je me souviens) de créer du HTML au fur et à mesure qu'il crée.
Le p = figure suivant (plot_width = 400, plot_height = 400)
, mais je comprends que c'est ** une opération pour créer un espace pour dessiner une figure **. Je comprends que c'est quelque chose comme fig = plt.figure (...)
dans matplotlib.
** # 2: Ajoutez le contenu du diagramme de dispersion (cette fois le cercle) à p **
Ce qui suit est p.circle (...)
, mais je comprends cela avec l'image d'ajouter son contenu à l'espace " p " créé ci-dessus. Cette fois, j'ai essayé de tracer avec 〇, donc j'utilise . Circle
*.
Le contenu de () est "axe x", "axe y" et "méthode d'affichage" à partir de la gauche.
** # 3: Dessin **
Lorsque vous dessinez une figure, elle peut être affichée avec show (p)
(_plt.show ()
_ dans matplotlib).
Je pense que les bases du bokeh ont été supprimées.
Ensuite, faisons un graphique linéaire (la méthode est presque la même).
from bokeh.plotting import figure, output_file, show
output_file('line.html')
p = figure(plot_width=400, plot_height=400)
p.line([1,2,3,4,5], [6,7,2,4,5], line_width=2)
show(p)
Le contenu est presque le même que celui du nuage de points. La seule différence est la partie "méthode d'affichage" de p.line (...)
, où l'épaisseur de ligne (line_width) est spécifiée. Une fois affiché, il ressemblera à ce qui suit.
Dans cet article, j'ai présenté la manière rudimentaire d'écrire le bokeh, mais j'espère que tout le monde pourra faire l'expérience de la figurine mobile gluante en la déplaçant avec la souris. Personnellement, j'ai pensé que ce serait utile pour des présentations dynamiques (je pense que matplotlib et seaborn sont suffisants pour faire des matériaux ppt).
Il semble qu'il existe des bibliothèques de visualisation gratuites et payantes fournies par plotly. Veuillez consulter le site officiel ci-dessous pour plus de détails.
Maintenant, installons complotement. Comme le bokeh, vous pouvez le faire avec pip ou conda.
pip install plotly
conda install -c plotly plotly=4.7.1
(à partir du document officiel)
Faisons le! Cependant, il est nécessaire de concevoir une autre manière de l'exécuter avec jupyter notebook. Selon le HP officiel, afin d'utiliser complotement avec jupyter notebook
conda install "notebook>=5.3" "ipywidgets>=7.2"
Il faut faire. Dans le cas de jupyter lab
conda install jupyterlab "ipywidgets=7.5"
Il faut faire.
import plotly.express as px
Tout d'abord, utilisons une bibliothèque appelée plotly.express.
La vue d'ensemble du code est ci-dessous.
import plotly.express as px
x = [1,2,3,4,5]
y = [6,7,2,4,5]
fig = px.scatter(x=x, y=y)
fig.show()
Quand tu fais ça,
Un diagramme comme celui-ci s'affiche. (Contrairement à la formule, les données sont les mêmes que celles utilisées dans le bokeh.) C'est très simple à utiliser, sans avoir besoin de l'expliquer (je pensais que c'était similaire à matplotlib).
La différence avec Matplotlib et Bokeh est que le nom de l'axe est répertorié même si le nom de l'axe (label) n'est pas spécifié.
Je n'ai pas spécifié la méthode d'affichage dans ce qui précède, je voudrais donc la combiner avec pandas.DataFrame et essayer divers paramètres également.
df = px.data.iris() #Définir les données d'iris comme trame de données
fig = px.scatter(df, x=df.sepal_length, y=df.sepal_width,
color=df.species, size=df.petal_length)
fig.show()
Ensuite, le graphique suivant sera généré.
Je lance px.sctter (...)
dans la figure et fais divers réglages dans ().
1 | 2 | 3 |
---|---|---|
dataframe | Lire les données | df |
x= | paramètres de l'axe des x(Les données+Réglage du nom de l'axe) | df.sepal_length |
y= | réglage de l'axe y(Les données+Réglage du nom de l'axe) | df.sepal_width |
color= | Paramètres de couleur(Le contenu de la colonne définie est reflété) | df.species |
size= | Dimensionnement du cercle(Le contenu de la colonne définie est reflété) | df.petal_length |
Tout d'abord, jetons un coup d'œil aux données de Iris.
df.head()
sepal_length | sepal_width | petal_length | petal_width | species | species_id | |
---|---|---|---|---|---|---|
0 | 5.1 | 3.5 | 1.4 | 0.2 | setosa | 1 |
1 | 4.9 | 3.0 | 1.4 | 0.2 | setosa | 1 |
2 | 4.7 | 3.2 | 1.3 | 0.2 | setosa | 1 |
3 | 4.6 | 3.1 | 1.5 | 0.2 | setosa | 1 |
4 | 5.0 | 3.6 | 1.4 | 0.2 | setosa | 1 |
--df: Je lis une trame de données.
--x =, y =: axe x
, axe y
sont définis. Le point à noter ici est que les données à l'intérieur sont spécifiées et que le nom de l'axe est également pris comme nom de colonne.
--color =: Ici, nous classons en utilisant species
.
--size =: La taille du cercle est définie. Ici, petal_length
est utilisé pour exprimer la taille du cercle.
Je pense que ce qui est intéressant à propos de l'intrigue, c'est que lorsque vous touchez les données sur le graphique avec le curseur de la souris, cela affichera ce qui est inclus dans les données. Je ne m'en occuperai pas cette fois, mais les données 3D sont très faciles à comprendre visuellement.
Cela fonctionne différemment de matplotlib et bokeh, il faut donc l'utiliser pour s'y habituer, mais c'est très intéressant.
――Cette fois, j'ai touché à deux bibliothèques de visualisation ―― Le bokeh et l'intrigue peuvent être exprimés de manière dynamique contrairement à matplotlib, c'est donc intéressant et polyvalent (je pense que chaque bibliothèque a ses avantages). ErsonPersonnellement, je voudrais approfondir ma compréhension de l'intrigue (je me demande si cela deviendra une arme puissante si je deviens compétent dans une certaine mesure ...).
c'est tout.
Recommended Posts