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

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

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

 

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

پیشنهاد ویژه : پکیج آموزش پایتون

اولین نوع طرح بندی Column layout است که ارقام نمودار را به صورت عمودی نمایش می دهد. تابع ()column در ماژول bokeh.layouts تعریف شده و امضای زیر را می گیرد –

from bokeh.layouts import column
col = column(children, sizing_mode)

 

sizing_mode – نحوه تغییر اندازه موارد در طرح را تعیین می کند. مقادیر احتمالی “fixed”, “stretch_both”, “scale_width”, “scale_height”, “scale_both” هستند. پیش فرض “fixed” است.

کد زیر دو شکل بوکه تولید می کند و آنها را در یک ستون قرار می دهد تا به صورت عمودی نمایش داده شوند. گلیف خطی نشان دهنده رابطه سینوسی و کسینوسی بین سری داده x و y در هر شکل نشان داده شده است.

 

from bokeh.plotting import figure, output_file, show
from bokeh.layouts import column
import numpy as np
import math
x = np.arange(0, math.pi*2, 0.05)
y1 = np.sin(x)
y2 = np.cos(x)
fig1 = figure(plot_width = 200, plot_height = 200)
fig1.line(x, y1,line_width = 2, line_color = 'blue')
fig2 = figure(plot_width = 200, plot_height = 200)
fig2.line(x, y2,line_width = 2, line_color = 'red')
c = column(children = [fig1, fig2], sizing_mode = 'stretch_both')
show(c)

 

خروجی

sizing mode

 

به همین ترتیب ، طرح ردیف نمودارها را به صورت افقی مرتب می کند ، برای آن تابع  ()row که در ماژول bokeh.layouts تعریف شده استفاده شده است. همانطور که فکر می کنید، دو آرگومان (شبیه تابع ()column) نیز لازم است –

منحنی های سینوس و کسینوسی همانطور که به صورت عمودی در نمودار بالا نشان داده شده است ، اکنون به صورت افقی در طرح ردیف با کد زیر نمایش داده می شوند

خروجی

layout arranges

 

پکیج بوکه همچنین دارای طرح بندی شبکه ای است. چندین شکل نمودار (و همچنین ابزارک ها) را در یک شبکه دو بعدی از ردیف ها و ستون ها نگهداری می کند. تابع ()gridplot  در ماژول bokeh.layouts یک شبکه و یک نوار ابزار واحد را برمی گرداند که ممکن است با کمک ویژگی toolbar_location قرار گیرد.

این برخلاف طرح سطر یا ستون نیست که هر نمودار نوار ابزار خود را نشان می دهد. تابع ()grid  نیز از فرزندان و پارامترهای sizing_mode استفاده می کند که در آن فرزندان لیستی از لیست ها است. اطمینان حاصل کنید که هر لیست زیر ابعادی یکسان دارد.

در کد زیر، چهار رابطه مختلف بین سری داده های x و y در شبکه ای از دو ردیف و دو ستون رسم شده است.

from bokeh.plotting import figure, output_file, show
from bokeh.layouts import gridplot
import math
x = list(range(1,11))

y1 = x
y2 =[11-i for i in x]
y3 = [i*i for i in x]
y4 = [math.log10(i) for i in x]

fig1 = figure(plot_width = 200, plot_height = 200)
fig1.line(x, y1,line_width = 2, line_color = 'blue')
fig2 = figure(plot_width = 200, plot_height = 200)
fig2.circle(x, y2,size = 10, color = 'green')
fig3 = figure(plot_width = 200, plot_height = 200)
fig3.circle(x,y3, size = 10, color = 'grey')
fig4 = figure(plot_width = 200, plot_height = 200, y_axis_type = 'log')
fig4.line(x,y4, line_width = 2, line_color = 'red')
grid = gridplot(children = [[fig1, fig2], [fig3,fig4]], sizing_mode = 'stretch_both')
show(grid)

 

خروجی

plotted

 

منبع.

 

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

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

دیدگاه شما

بدون دیدگاه