يلعب تصور البيانات دورًا حاسمًا في تفسير كميات كبيرة من المعلومات. ظهرت أدوات مثل Bokeh كحلول شائعة لإنشاء لوحات معلومات وتقارير تفاعلية. توفر كل أداة مزايا فريدة اعتمادًا على مدى تعقيد مشروعك ولغة البرمجة المفضلة لديك. في هذه المقالة، سنتعمق في كل أداة ثم نركز على Bokeh، بما في ذلك المثال العملي والنشر في السحابة.
لهذا السبب...
ما هو البوكيه؟
Bokeh عبارة عن مكتبة تصور تفاعلية تستهدف متصفحات الويب الحديثة للعرض التقديمي. فهو يوفر رسومات أنيقة وموجزة، مما يمكّن المطورين من إنشاء لوحات معلومات ذات تفاعل متقدم. يعد Bokeh مناسبًا بشكل خاص لعلماء البيانات والمطورين الذين يستخدمون Python، حيث يقدم واجهات عالية المستوى وتحكمًا دقيقًا في مخططاتك.
كيف يمكنك استخدام هذه الأداة؟
بوكيه تثبيت النقطة
تثبيت النقطة 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) `
قم بإنشاء صفحتك في هيروكو وقم بالخطوات التالية.
في هذا الملف أعلن على سبيل المثال في حالتي.
الويب: خدمة البوكيه --port=$PORT --address=0.0.0.0 --allow-websocket-origin=juancitoelpapi-325d94c2c6c7.herokuapp.com app.py
بوكيه
الأمر مشابه عندما تدفع مشروعًا في git ولكن في هذه الحالة تكون الدفعة الرئيسية النهائية في Heroku
جيت الحرف الأول
إضافة بوابة .
git Commit -m "نشر تطبيق Bokeh باستخدام Gunicorn"
بوابة دفع هيروكو ماستر
يمكنك رؤية صفحتك مع خوخه المؤامرات.
تكمن القوة الحقيقية لـ Bokeh في قدرتها على تقديم لوحات معلومات تفاعلية في بيئات الويب، مما يجعلها مثالية لمراقبة البيانات في الوقت الفعلي ومجموعات البيانات الكبيرة. باستخدام Gunicorn لنشر تطبيقات Bokeh على الخدمات السحابية مثل Heroku، يمكنك إنشاء لوحات معلومات قابلة للتطوير وجاهزة للإنتاج يسهل صيانتها وتحديثها.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3