"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Bokeh, un outil de données intéressant en python pour la visualisation de données

Bokeh, un outil de données intéressant en python pour la visualisation de données

Publié le 2024-11-08
Parcourir:419

La visualisation des données joue un rôle essentiel dans l'interprétation de grands volumes d'informations. Des outils tels que Bokeh sont devenus des solutions populaires pour créer des tableaux de bord et des rapports interactifs. Chaque outil apporte des avantages uniques en fonction de la complexité de votre projet et de votre langage de programmation préféré. Dans cet article, nous examinerons chaque outil, puis nous concentrerons sur Bokeh, y compris un exemple pratique et un déploiement dans le cloud.

De sorte que...

Qu'est-ce que le bokeh ?
Bokeh est une bibliothèque de visualisation interactive qui cible les navigateurs Web modernes pour la présentation. Il offre des graphiques élégants et concis, permettant aux développeurs de créer des tableaux de bord avec une interactivité avancée. Bokeh est particulièrement adapté aux data scientists et aux développeurs utilisant Python, offrant à la fois des interfaces de haut niveau et un contrôle granulaire sur vos tracés.

Comment pouvez-vous utiliser cet outil ?

  • Installer les dépendances :

pip installer bokeh
pip installer gunicorn

  • Créez l'intrigue : Dans ce cas, j'ai développé deux tracés dans la page principale puis j'ai appelé "app.py"

Bokeh an interesting data tool in python for data visualization

from bokeh.layouts import column
from bokeh.models import ColumnDataSource, Select
from bokeh.plotting import figure, curdoc
import numpy as np

# Sample data for line plot
line_data = {
    'x': [1, 2, 3, 4, 5],
    'y1': [6, 7, 2, 4, 7],
    'y2': [1, 4, 8, 6, 9]
}

# Data for scatter plot
N = 4000
x_scatter = np.random.random(size=N) * 100
y_scatter = np.random.random(size=N) * 100
radii = np.random.random(size=N) * 1.5
colors = np.array([(r, g, 150) for r, g in zip(50   2 * x_scatter, 30   2 * y_scatter)], dtype="uint8")

# Create ColumnDataSource for line plot
source = ColumnDataSource(data={'x': line_data['x'], 'y': line_data['y1']})

# Create a figure for line plot
plot_line = figure(title="Interactive Line Plot", x_axis_label='X', y_axis_label='Y')
line1 = plot_line.line('x', 'y', source=source, line_width=3, color='blue', legend_label='y1')
line2 = plot_line.line('x', 'y2', source=source, line_width=3, color='red', legend_label='y2', line_alpha=0.5)

# Create a figure for scatter plot
plot_scatter = figure(title="Scatter Plot", tools="hover,crosshair,pan,wheel_zoom,zoom_in,zoom_out,box_zoom,undo,redo,reset,tap,save,box_select,poly_select,lasso_select,examine,help")
plot_scatter.circle(x_scatter, y_scatter, radius=radii,
                    fill_color=colors, fill_alpha=0.6,
                    line_color=None)

# Dropdown widget to select data for line plot
select = Select(title="Y-axis data", value='y1', options=['y1', 'y2'])

# Update function to change data based on selection
def update(attr, old, new):
    selected_y = select.value
    source.data = {'x': line_data['x'], 'y': line_data[selected_y]}
    # Update line colors based on selection
    line1.visible = (selected_y == 'y1')
    line2.visible = (selected_y == 'y2')
    plot_line.title.text = f"Interactive Line Plot - Showing {selected_y}"

select.on_change('value', update)

# Arrange plots and widgets in a layout
layout = column(select, plot_line, plot_scatter)

# Add layout to current document
curdoc().add_root(layout)
`

Créez votre page dans Heroku et suivez les étapes suivantes.

  • Créer un fichier proc :

Bokeh an interesting data tool in python for data visualization

Dans ce fichier déclarez par exemple dans mon cas.

web : bokeh serve --port=$PORT --address=0.0.0.0 --allow-websocket-origin=juancitoelpapi-325d94c2c6c7.herokuapp.com app.py

  • Créer des exigences : Dans le projet, créez des exigences.txt, écrivez et enregistrez

Bokeh an interesting data tool in python for data visualization

bokeh

  • Poussez votre projet :

C'est similaire lorsque vous poussez un projet dans git mais dans ce cas, le push principal final est dans heroku

git init
git ajouter .
git commit -m "Déployer l'application Bokeh avec Gunicorn"
git push maître heroku

  • Et enfin...

Vous pouvez voir votre page avec les tracés bokeh.

Bokeh an interesting data tool in python for data visualization

Bokeh an interesting data tool in python for data visualization

  • Conclusion

La véritable puissance de Bokeh réside dans sa capacité à fournir des tableaux de bord interactifs dans des environnements Web, ce qui le rend idéal pour la surveillance des données en temps réel et de grands ensembles de données. En utilisant Gunicorn pour déployer des applications Bokeh sur des services cloud comme Heroku, vous pouvez créer des tableaux de bord évolutifs, prêts pour la production, faciles à maintenir et à mettre à jour.

Déclaration de sortie Cet article est reproduit sur : https://dev.to/juan_brendonlunajuarez_/bokeh-an-interesting-data-tool-in-python-for-data-visualization-2bd6?1 En cas de violation, veuillez contacter study_golang@163 .com pour le supprimer
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3