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 ?
pip installer bokeh
pip installer gunicorn
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.
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
bokeh
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
Vous pouvez voir votre page avec les tracés bokeh.
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.
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