查看原文
其他

Bokeh小册子:入门

我是阳哥 Python数据之道 2022-04-24

一直觉得 Bokeh 的图很漂亮,今天我们来开始用 bokeh 制图, 本文是开篇,希望大家喜欢~

本次运行环境为:

  • win7

  • jupyter notebook

  • python 3.6

  • bokeh 0.13.0

常规步骤

bokeh 中绘图有两类主要的接口, bokeh.plotting 和 bokeh.models , 其中 plotting 是高级接口,一般情况下我们使用 bokeh.plotting 较多。 下面,我们介绍的内容,主要是针对 bokeh.plotting

在bokeh中绘制图表的常规步骤:

  1. 加载 bokeh 库,声明在 notebook 或 html 文件中显示或输出绘制的图表

  2. 绘制图表框架 figure()

  3. 在 figure 上绘制具体的图形,比如 circle,line,bar等

  4. 显示图片,show()

绘制 circle()

首先,在绘制图表框架 figure() 时,可以设置图表大小(plot_wihth,plot_height),也可以设置图表框架旁边所用的工具(tools)

  • 工具可以是以下 value,可以根据实际情况来选择合作的工具使用。

  • "crosshair,pan,wheel_zoom,box_zoom,reset,box_select,lasso_select,save"

这里,我们以绘制 circle 为例,来介绍 Bokeh 的一般用法。

  1. from bokeh.plotting import output_notebook, figure, show

  2. import pandas as pd

  3. import numpy as np

  4. output_notebook()

  5. # tools="pan,box_zoom,wheel_zoom,reset,save"

  6. # 工具可以是以下 value,可以根据实际情况来选择合作的工具使用

  7. tools = "crosshair,pan,wheel_zoom,box_zoom,reset,box_select,lasso_select,save"

  8. p = figure(plot_width=400, plot_height = 400, tools=tools)

  9. p.circle([1,2,3,4],[5,6,7,8],size=20, color='red', alpha=0.5)

  10. show(p)

其中,参数:alpha,数值越小,透明度越高


参数 angle,对于 circle 而言,angle参数似乎没有用……(因为本身就是圆的,旋转角度没有影响)

  1. p = figure(plot_width=400, plot_height = 400)

  2. p.circle([1,2,3,4],[5,6,7,8],size=40, color='#6aa84f', alpha=0.8, angle=0.8)

  3. show(p)


fill_color, fill_alpha, 这两个参数用来设置圆体的填充颜色和透明度

  1. p = figure(plot_width=400, plot_height = 400)

  2. p.circle([1,2,3,4],[5,6,7,8],size=40, color='#6aa84f', alpha=0.8,

  3.         angle=0.8,fill_alpha=0.9, fill_color='blue')

  4. show(p)




  • line_alpha 线条透明度

  • line_color 线条颜色

  • line_cap 的参数似乎没有效果, line_cap 的值可以是 (butt, round, square)

  • line_width, 圆圈边缘线条的宽度

  1. p = figure(plot_width=400, plot_height = 400)

  2. p.circle([1,2,3,4],[5,6,7,8],size=40, color='#6aa84f', alpha=0.8,

  3.         angle=0.8,fill_alpha=0.1, fill_color='blue',

  4.        line_color='red', line_alpha=0.9, line_width=4,

  5.        line_cap='square')

  6. # LineCap = Enumeration(butt, round, square)

  7. # Specify how stroked lines should be terminated

  8. show(p)

line_dash

官方描述如下 Accept line dash specifications.

Express patterns that describe line dashes. DashPattern values can be specified in a variety of ways:

An enum: “solid”, “dashed”, “dotted”, “dotdash”, “dashdot” a tuple or list of integers in the HTML5 Canvas dash specification style. Note that if the list of integers has an odd number of elements, then it is duplicated, and that duplicated list becomes the new dash list. To indicate that dashing is turned off (solid lines), specify the empty list [].

  1. p = figure(plot_width=400, plot_height = 400)

  2. p.circle([1,2,3,4],[5,6,7,8],size=40, color='#6aa84f', alpha=0.8,

  3.         angle=0.8,fill_alpha=0.1, fill_color='blue',

  4.        line_color='red', line_alpha=0.9, line_width=4,

  5.        line_cap='square', line_dash='dashed')

  6. show(p)

当然, circle() 中还有其他的参数可以设置,有兴趣的童鞋不妨自行摸索下。


--- End ---


点击前往【项目实战】

世界杯系列 | 福布斯系列 | 求职系列


很多同学还没有养成阅读后转发的习惯,希望大家在阅读后顺便转发,以示鼓励!长期坚持真的很不容易,坚持是一种信仰,专注是一种态度!

想加入微信群的同学,请在公众号后台回复 “微信群”, 按提示加入群。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存