آموزش سرور در برنامه نویسی بوکه

3 سال پیش
آموزش سرور در برنامه نویسی بوکه

آموزش سرور در برنامه نویسی بوکه

در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش سرور در برنامه نویسی بوکه خواهیم پرداخت.

معماری بوکه دارای یک طراحی جداگانه است که در آن اشیایی مانند نمودارها و حروف کوچک با استفاده از پایتون ایجاد می شوند و در JSON تبدیل می شوند تا توسط کتابخانه کلاینت BokehJS مصرف شوند.

پیشنهاد ویژه : آموزش طراحی وب سایت با پایتون

با این وجود می توان اشیا را در پایتون و در مرورگر با کمک سرور بوکه همگام کرد. پاسخ به وقایع رابط کاربری (UI) تولید شده در مرورگر با تمام قدرت پایتون را امکان پذیر می کند. همچنین به شما کمک می کند تا به طور خودکار به روزرسانی های سمت سرور را به ویجت ها یا طرح های موجود در مرورگر فشار دهید.

یک سرور بوکه از کد برنامه نوشته شده در پایتون برای ایجاد اسناد بوکه استفاده می کند. هر اتصال جدید از یک مرورگر مشتری منجر به ایجاد یک سند جدید برای سرور بوکه می شود.

Server

 

در ابتدا  ما باید یک کد برنامه ایجاد کنیم تا در مرورگر کلاینت ارائه شود. کد زیر یک گلیف خط موج سینوسی ارائه می دهد. همراه با طرح ، یک کنترل لغزنده نیز برای کنترل فرکانس موج سینوسی ارائه می شود. تابع فراخوانی ()update_data  داده های ColumnDataSource را به روز می کند و مقدار آنی لغزنده را به عنوان فرکانس فعلی در نظر می گیرد.

import numpy as np
from bokeh.io import curdoc
from bokeh.layouts import row, column
from bokeh.models import ColumnDataSource
from bokeh.models.widgets import Slider, TextInput
from bokeh.plotting import figure
N = 200
x = np.linspace(0, 4*np.pi, N)
y = np.sin(x)
source = ColumnDataSource(data = dict(x = x, y = y))
plot = figure(plot_height = 400, plot_width = 400, title = "sine wave")
plot.line('x', 'y', source = source, line_width = 3, line_alpha = 0.6)
freq = Slider(title = "frequency", value = 1.0, start = 0.1, end = 5.1, step = 0.1)
def update_data(attrname, old, new):
   a = 1
   b = 0
   w = 0
   k = freq.value
   x = np.linspace(0, 4*np.pi, N)
   y = a*np.sin(k*x + w) + b
   source.data = dict(x = x, y = y)
freq.on_change('value', update_data)
curdoc().add_root(row(freq, plot, width = 500))
curdoc().title = "Sliders"

 

بعد ، با دنبال کردن خط فرمان سرور بوکه را شروع کنید

Bokeh serve –show sliders.py

 

سرور بوکه شروع به اجرا و سرویس دهی برنامه در localhost: 5006 / اسلایدر می کند. ورود به سیستم کنسول نمایشگر زیر را نشان می دهد

 

C:\Users\User>bokeh serve --show scripts\sliders.py
۲۰۱۹-۰۹-۲۹ ۰۰:۲۱:۳۵,۸۵۵ Starting Bokeh server version 1.3.4 (running on Tornado 6.0.3)
۲۰۱۹-۰۹-۲۹ ۰۰:۲۱:۳۵,۸۷۵ Bokeh app running at: http://localhost:5006/sliders
۲۰۱۹-۰۹-۲۹ ۰۰:۲۱:۳۵,۸۷۵ Starting Bokeh server with process id: 3776
۲۰۱۹-۰۹-۲۹ ۰۰:۲۱:۳۷,۳۳۰ ۲۰۰ GET /sliders (::1) 699.99ms
۲۰۱۹-۰۹-۲۹ ۰۰:۲۱:۳۸,۰۳۳ ۱۰۱ GET /sliders/ws?bokeh-protocol-version=1.0&bokeh-session-id=VDxLKOzI5Ppl9kDvEMRzZgDVyqnXzvDWsAO21bRCKRZZ (::1) 4.00ms
۲۰۱۹-۰۹-۲۹ ۰۰:۲۱:۳۸,۰۴۵ WebSocket connection opened
۲۰۱۹-۰۹-۲۹ ۰۰:۲۱:۳۸,۰۴۹ ServerConnection created

 

مرورگر مورد علاقه خود را باز کرده و آدرس بالا را وارد کنید. نمودار موج سینوسی به شرح زیر نمایش داده می شود

ServerConnection

 

با چرخاندن نوار لغزنده می توانید فرکانس را به ۲ تغییر دهید.

frequency

 

منبع.

لیست جلسات قبل آموزش برنامه نویسی بوکه 

  1. آموزش برنامه نویسی بوکه – مقدمه
  2. آموزش تنظیمات محیط برنامه نویسی بوکه
  3. آموزش برنامه نویسی بوکه و شروع کار
  4. آموزش ژوپیتر نوت بوک در برنامه نویسی بوکه 
  5. آموزش مفاهیم کلی برنامه نویسی بوکه
  6. آموزش طرح ها و گلیف در برنامه نویسی بوکه
  7. آموزش نمودار مساحت در برنامه نویسی بوکه
  8. آموزش گلیف دایره در برنامه نویسی بوکه
  9.  آموزش مستطیل، بیضی و چند ضلعی در برنامه نویسی بوکه
  10. آموزش گوه و قوس در برنامه نویسی بوکه
  11. آموزش منحنی های تخصصی در برنامه نویسی بوکه
  12. آموزش تنظیم محدوده ها در برنامه نویسی بوکه
  13. آموزش محورها در برنامه نویسی بوکه
  14.  آموزش حاشیه نویسی و legendها در برنامه نویسی بوکه
  15. آموزش pandas در برنامه نویسی بوکه
  16. آموزش  ColumnDataSource در برنامه نویسی بوکه
  17. آموزش فیلتر کردن داده ها در برنامه نویسی بوکه
  18. آموزش طرح بندی در برنامه نویسی بوکه
  19. آموزش نوار ابزار در برنامه نویسی بوکه
  20. آموزش ویژگی های بصری در برنامه نویسی بوکه 
  21. آموزش سفارشی کردن legend ها در برنامه نویسی بوکه
  22. آموزش افزودن ویجت ها در برنامه نویسی بوکه
0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه