发行版

2.2.0

Bokeh版本 2.2.0 (2020年8月)是一个小版本,主要致力于性能、SVG导出和数据表的重大改进。

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

椭圆形标志符号已弃用

这个 Ovall glyph在很大程度上是椭圆glyph的复制,将在3.0版本中删除。使用 Ellipse 相反。

Tooltip.inner_only 贬低

此属性不起作用,是不必要的,已被删除。不提供替换件。

scenterxscentery 贬低

以前,glyphs可以单独实现 scenterxscentery 报告可以锚定悬停的“中心”位置。这些组合成了一个 Glyph.scenterxy() 应改为实现的方法。(只有在Bokeh或自定义扩展中实现新glyph时,此更改才有意义。)

实施 Renderer._render 而不是 Renderer.render

呈现程序必须实现抽象方法 _render 相反 render ,现在是“最终”。这种突破性的变化只影响扩展开发人员。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 2.2.0

文件名

搞砸

bokeh-2.2.0.js

HWUddcBUrmjMGlatWZQ6cTiR1lv9nRhpO4glaLZbwv6XaLcHiavxTE1y7aycKN84

bokeh-2.2.0.legacy.js

jn80EOOl+jjFpUxXAaFxj+mp8D0jdGbMe7nB1n9VKiH3GyWb4YCvDOac7qUT0B+D

bokeh-2.2.0.legacy.min.js

7Peutdx4p5H1GyP+Cz8ISLTRt4ZZIJiGk3b9pu1Gcw7ibwLYPsYTiRdSSdsNsKid

bokeh-2.2.0.min.js

jtq3UzIrk2TfDZfSNGEN0ICKrRWmtzZSQm6i1Xnd3hY3UfU9m98vuEL7JUv7Iway

bokeh-api-2.2.0.js

Sx/txgA3xDuNmSD5f63Zwi07OuEkmMyBqLTXd3IzUUAL+CdGNVh6208G1yEMANM3

bokeh-api-2.2.0.legacy.js

uBvMNJKz4Oj5psUXjf0gg0iA5KzHSnR8cm7SccR07nlDRGCBq1yz0UfCm3Xv2w29

bokeh-api-2.2.0.legacy.min.js

LbWq3R9lLiXXw/9l7m2LiRFhyOAegMc3+sxfvTs0QY26ue5jeFlxXvZRWazHUGB7

bokeh-api-2.2.0.min.js

6YITAvxbhCVOBwflA37nkPgcJrThNGU4+3iBEoUZWnn1Pl80Dw0WkBCln/2kraue

bokeh-tables-2.2.0.js

8TEaqPLaBHpOdZTsL3FGhxJoWk+HQX2B/o+lNB1W/lcevwHv4zE+rGUXKmsUVPHv

bokeh-tables-2.2.0.legacy.js

lF4V/CRYjq9fjlmWFdfSJWQPT1av55RMN9L9yCFmQcaigtZgx8e/5o85m4WCiiSp

bokeh-tables-2.2.0.legacy.min.js

jQA1fLGQd1PUY1g4KpJlS126UlCWmZ5onbFiGkYjPn7QbthOJVGjbHJsgL+YtDlC

bokeh-tables-2.2.0.min.js

MJyUmyL5f4wPlABPEp4CF5HzMeAPMvzucE8gEGNH15tAWgHFb2hsPNIEkva89XtP

bokeh-widgets-2.2.0.js

QygoBek5f5VCQaTTWfzPSdV9lSc4BJxBRYNcPJn0J06IyiMvbyzbJ/3L1uM0+pUc

bokeh-widgets-2.2.0.legacy.js

2Pk7Nt9MH2oFp/tm7MI+QHydRmrhxtqW/hJFAwFn6icPuPw8Afj+SPSc09XcDeYv

bokeh-widgets-2.2.0.legacy.min.js

NkexJSiMei5zd/r9kQUyp1VarioNDSSFfeoGRUUOdS7rXQKbf/dfGEYtncGm/Zpp

bokeh-widgets-2.2.0.min.js

rRlSZb4FImflqQNhKcvkZq8b+FqcNFxP9CmCO8Vgo9uNXe6wk6yNMlKMrXn+TjeM

2.1.1

Bokeh版本 2.1.1 (2020年6月)是一个修补程序版本,它修复了一些错误:

  • 导入BokehJS时无法解析样式 (#10172

  • Bokeh服务器无法使用随机端口正确启动 (#10175

  • 一些标量属性不正确地序列化 (#10181#10197

  • 类型化数组未作为列表返回到Bokeh服务器 (#10204

有关详细信息,请参阅 CHANGELOG .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 2.1.1

文件名

搞砸

bokeh-2.1.1.js

NVLoIvhAPsmuha054OhJyqTTwn2SOLrWhjxN2SzDl9jOMA4BEiQxdVuj5/I1Mmlk

bokeh-2.1.1.legacy.js

RBI4nsh+bEi+7zpVleMsOZUmqEQzDFu8Ar5XC5/P/84vbxgFK1NIM92rINmQzjwU

bokeh-2.1.1.legacy.min.js

xgqxtE4DfXlrEtlnBUkVqMbnOURwprjA1SsHl6y8UWE+cRIqdjVX1qgKihR+HOQe

bokeh-2.1.1.min.js

kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12

bokeh-api-2.1.1.js

fHPdzgGhF9+z6/uHjkV4/p1xRkfDoh4qQiFH8d1PKfFbovAcfcDK5UEkFW1yrKh1

bokeh-api-2.1.1.legacy.js

q1u6/ob8Oh5rFQimYfu8a/er74etdvFTWg7693iQOqJKRnsF5+WV1ZrxPfITNvfb

bokeh-api-2.1.1.legacy.min.js

95gwE5C8plfAAMn73j6cdrhxzF9yR9x2TZfynVtJ13uq7PRi9I1d3TkTh7hvRXix

bokeh-api-2.1.1.min.js

i2RsfqLVG6PTrWCD55m8pYN9N2XZRkYVASzqjzp79o0OpPmcp+APyuwCfItW7Kn2

bokeh-gl-2.1.1.js

8erITZznxK6uKioMEcOq2npDGs7AEFHFtVWrc2AKCi8ECfHm7vnoxuEmpRvyQqSk

bokeh-gl-2.1.1.legacy.js

MEBWyCmkuaX5C8CCds3GaWzuGCHzlBEV8BNYKB0gWuljHcZRbs6oA0D5pxkrpeGl

bokeh-gl-2.1.1.legacy.min.js

98NnStat48VxzQfNiwcrkE9sIbY4fLA0TbMFwox0W6STcJTYASH0X7+8FWNs+kJK

bokeh-gl-2.1.1.min.js

cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j

bokeh-tables-2.1.1.js

6DK1i1bdhwE/TTptO3hbgsxj/iutwm7PdE10v4slZGDlYZx3GMcbLtpg1xrUm6Bn

bokeh-tables-2.1.1.legacy.js

ykvWokuORGkpcepCRxTWRemCEwq/x8R6CiGGLZNApLRuvLjNdX8QV6SqDMjdI/YC

bokeh-tables-2.1.1.legacy.min.js

lOOVHppS3DRG2uB+vzOhAS+Xq24s+wdjupxCRrFfesE8zTomHjsMQVbHoMkuZcXj

bokeh-tables-2.1.1.min.js

Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P

bokeh-widgets-2.1.1.js

L7h7EJKAj2o3SNeMZLc6KlaEs4s8tbRi758Z1a4R9NIZcljBHO44P1BIq2BRx8zm

bokeh-widgets-2.1.1.legacy.js

sKMXawb05LDb63tXK6kPkvyUnfr5sCfO3RLzuASpE/K1g/jauZsnVVY5m1e9SK5h

bokeh-widgets-2.1.1.legacy.min.js

9YB+c7X2EFtj53AwqLBPhrtyIyhdjjiBfWKjKg19kHgpns/+i6q/qDc/qLvevc61

bokeh-widgets-2.1.1.min.js

xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe

2.1.0

Bokeh版本 2.1.0 (2020年6月)是一个小版本。

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

最低龙卷风版本

torndado的最低版本现在是5.1。

render_mode 贬低

工具覆盖现在可以在HTML5画布上高效地实现,而不需要任何单独的CSS呈现代码路径。这使得 render_mode 属性已过时。因此, render_mode 在当前出现的任何地方都被弃用(并被忽略),将来将在Bokeh3.0中完全删除。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 2.1.0

文件名

搞砸

bokeh-2.1.0.js

smlIzEf/gQO6ExfNl5a8XBidlyD19zbzMpXXJY7ubwKwSfTMrKlwTYgiWto3rZzU

bokeh-2.1.0.legacy.js

RpGF0bcRBNXaWVctH5KT/NjQeNFRGMPL9oUgOG2F+9VIXxYjfger3IP+ytOOmSgL

bokeh-2.1.0.legacy.min.js

bUAsC0BTUcTfnjUJFtIVEh++eVDwc6LFREim9lOJbWw7mvhjWyi+yLszwgWfeTqb

bokeh-2.1.0.min.js

YobFyzPeVUsFQydHkJGsJL1kyfHnWxOlPc3EwaV22TmBaeGoXHLWx5aRRVPS9xlE

bokeh-api-2.1.0.js

rJKJBWIJD2CGyndJoGyYw7CFIPXc+Jt1i2YvubXgagPPJmVhHX1CbFIfg8IUo9xe

bokeh-api-2.1.0.legacy.js

q1u6/ob8Oh5rFQimYfu8a/er74etdvFTWg7693iQOqJKRnsF5+WV1ZrxPfITNvfb

bokeh-api-2.1.0.legacy.min.js

95gwE5C8plfAAMn73j6cdrhxzF9yR9x2TZfynVtJ13uq7PRi9I1d3TkTh7hvRXix

bokeh-api-2.1.0.min.js

xIZ6DggyeeSB9o8lHxPnUJ4VvsdRuiKdRbWJwKIyqMvCe2PSJUnosrCjOBeBVjou

bokeh-gl-2.1.0.js

jbmt8y8AdRgk4QjO2K/148FQDLB6nkbStWebxCvbQDiapg3aKQHwHoNcRukDG07F

bokeh-gl-2.1.0.legacy.js

MEBWyCmkuaX5C8CCds3GaWzuGCHzlBEV8BNYKB0gWuljHcZRbs6oA0D5pxkrpeGl

bokeh-gl-2.1.0.legacy.min.js

98NnStat48VxzQfNiwcrkE9sIbY4fLA0TbMFwox0W6STcJTYASH0X7+8FWNs+kJK

bokeh-gl-2.1.0.min.js

u+eGuEXC8aw0VSCm2mH+b/tQEAitUOYiR1H6SuIVEdUmXsf4vN8m/SmXpmjb7U/X

bokeh-tables-2.1.0.js

CaO0W7A9MK3Qvvfc3PA0nh6w2Z/3+zYxs8XW6Z1rqS9dsi7Gxcm6gEAsAdU1uAA4

bokeh-tables-2.1.0.legacy.js

uSsaxVyXxnPQBvMJ+0rD4U99UNbAPC383K3h3aRGpUUuWy2IhtF4BIMscrO6YJez

bokeh-tables-2.1.0.legacy.min.js

lOOVHppS3DRG2uB+vzOhAS+Xq24s+wdjupxCRrFfesE8zTomHjsMQVbHoMkuZcXj

bokeh-tables-2.1.0.min.js

uMVqQc8JqHitD67bXTn9a06Mrk3EiHRaZ18EJENQenAKJ/KL71SakdXYomZQpGRr

bokeh-widgets-2.1.0.js

oRbeM2fQ3VzhFyc6p/C86hNZd2We22frCSb3mED+0QkYd9apnd8eV3QBptQ3gSWk

bokeh-widgets-2.1.0.legacy.js

UcfeYWDL9mxMD4KNi/Zh9g6xXlOIK60JugPIn95doUPDPfpntjczG0sDq7i/VHS/

bokeh-widgets-2.1.0.legacy.min.js

9YB+c7X2EFtj53AwqLBPhrtyIyhdjjiBfWKjKg19kHgpns/+i6q/qDc/qLvevc61

bokeh-widgets-2.1.0.min.js

NuAg9+TcTQQqvQCTtkCneRrpkTiMhhfiq0KHiBzx8ECiKiLWXHN6i6ia3q7b3eHu

2.0.2

Bokeh版本 2.0.2 (2020年4月)是一个微版本,它修复了一些bug并改进了一些小特性。亮点包括:

  • 允许在一个页面上使用多个版本的BokehJS #9812

  • 会话令牌过期的跨时区问题 #9938 .

  • 使用Django集成修复服务器资源 #9724

  • 制作 add_layout 更新地物 #8862

  • Windows上的预编译扩展已损坏 #9900

  • BoxAnnotation忽略 fill_color=None #9877

  • 一些文档说明、更正和扩展

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 2.0.2

文件名

搞砸

bokeh-2.0.2.js

UkMqtNT0SHaqLs533WBFIFOQlpI0oBLZ95mmE1znOc2DAxVKE4kV2N/fa5pVclbM

bokeh-2.0.2.legacy.js

KR4odrT8FGe/RhbQJhXna9lnYbqSWgJtZDwSKYLtXHMq9jMZIsfhfvtsoGNPnhIo

bokeh-2.0.2.legacy.min.js

AoV/enIYdFQoSGC1L2lLtqfaV+SbCrpoH/4hQUn5dtA51YEdvP6WfmgDQNA2PD8T

bokeh-2.0.2.min.js

ufR9RFnRs6lniiaFvtJziE0YeidtAgBRH6ux2oUItHw5WTvE1zuk9uzhUU/FJXDp

bokeh-api-2.0.2.js

pEcCaul3FFhMhIk5Ib+CSpaNEyYfq0aaE9O8rrhpdxcyLo1m2TnmNV6o08/V4M1S

bokeh-api-2.0.2.legacy.js

KZAnUNKcEmSVBZghd5dptYHphk8xa55V7nAI2/h1HG8PR5CMuNPFlGRbIBrBF1SY

bokeh-api-2.0.2.legacy.min.js

03FcICQ8bpmcrt5mY8FzsP7Kro1Kw0YZZE5eVQbYE4Wqk+NVgI+SM1v+a9PdWE0z

bokeh-api-2.0.2.min.js

Zat0VmMWmxj1LsoPt4eZNROXIBlbHawNk70+fMuyPdrkf4bxPfol5eSjkM+2+Aql

bokeh-gl-2.0.2.js

6yzpricF16lQHn3ROOALnfyJptl3EecpUjgsPl4dUrb9zuW6iW/nmtQi0QVl3m1X

bokeh-gl-2.0.2.legacy.js

WLfvPAAPOQKpctNISXTgn2kE1nyyeTUXj4A/NiG0YbqPK/Xj5oqPbt//i81ihYeU

bokeh-gl-2.0.2.legacy.min.js

CE+tCfPoRABVp191bkCRXM1NRLpqfinJwg/OFcpsEHjQXXFgw9V9nF87uPtrOYOf

bokeh-gl-2.0.2.min.js

Ozhzj+SI7ywm74aOI/UajcWz+C0NjsPunEVyVIrxzYkB+jA+2tUw8x5xJCbVtK5I

bokeh-tables-2.0.2.js

QG2THvrid1TaGMrCMRHlxyFM+C3mICkJUkg7FOzJ2gz4eF75RYIVUnZno7pIIwsA

bokeh-tables-2.0.2.legacy.js

S6FHFqy5i3uM+3gj4ugPMu87Da52GRfmKt6KF/Hnl2IjHHHK2V3iBfuwnx8SAK6i

bokeh-tables-2.0.2.legacy.min.js

rhuxmfZAceRijfxNigMNjFg90KJSGBUo50km7JE3jsafe5owfpDUqpvbFOP9fOYX

bokeh-tables-2.0.2.min.js

Jm8cH3Rg0P6UeZhVY5cLy1WzKajUT9KImCY+76hEqrcJt59/d8GPvFHjCkYgnSIn

bokeh-widgets-2.0.2.js

MDkkPkuvFEG9VnB0db27S9LUbNBTJeHrbyRkF5HhRkbvFea5sWHFRtOe6lX1WTqS

bokeh-widgets-2.0.2.legacy.js

vVYnVy2HoB37gEZG9Tq78szpR4DYLmiTeqw0pxSiY9VsF14z805OmjWBuDbM7c9D

bokeh-widgets-2.0.2.legacy.min.js

lmZ8KDe0/DcnTQAy/2LTZwfu07YHb9G1PomUfcq1armS4FOfmtUpcldq97T/GRPO

bokeh-widgets-2.0.2.min.js

8QM/PGWBT+IssZuRcDcjzwIh1mkOmJSoNMmyYDZbCfXJg3Ap1lEvdVgFuSAwhb/J

2.0.1

Bokeh版本 2.0.1 (2020年4月)是一个微版本,它修复了一些bug并改进了一些小特性。亮点包括:

  • 解决Chrome和Chrome浏览器中的跨源资源共享(CORS)问题 #9773 .

  • 为FileInput小部件添加多文件支持 #9727

  • Bokeh服务器现在可以提供自定义扩展代码 #9799

  • 一些文档说明、更正和扩展

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 2.0.1

文件名

搞砸

bokeh-2.0.1.js

tVKczto01upF7/7P6LiOXpSGTl8bvd0ihJsAjj5ATZ1HtHOjzehsk1QG11v8RPzh

bokeh-2.0.1.legacy.js

j1UHF3UJfhCev0f69mDNT2k/857WQoTqDak+5TcRPnKQNoLRi2GhE+0l/SUesc5u

bokeh-2.0.1.legacy.min.js

BZqRV/bgjl9qbvOa7Ehju5MU9l4MCem5np926ozIQbWznvbWHmAgO6DQ8MACVcyI

bokeh-2.0.1.min.js

JpP8FXbgAZLkfur7LiK3j9AGBhHNIvF742meBJrjO2ShJDhCG2I1uVvW+0DUtrmc

bokeh-api-2.0.1.js

3UyeqdzNZeuZetwUuVRgFoO1uwKKkuGfgEPqo6oPW9WCz4O9iJwsb2q1DqtKrC29

bokeh-api-2.0.1.legacy.js

+pCbh0AGqgu9Dq5DjAa7Lpa7wFIRmZACdLG+EliwqoiNnx7U/VxKZVAcbk3TsRCu

bokeh-api-2.0.1.legacy.min.js

/4Td+BHIeJldFeenXtt4biFbj1MrXgGChNRC/GuCYY2iPuv5T3IaVY/xq9VC4miP

bokeh-api-2.0.1.min.js

a8BoFqd1NmyhsrJQ01yAbRnWLr/qZLIOGtN4PqPfrTFR0EqaYMjBgPhxgQJFt7Sb

bokeh-gl-2.0.1.js

s/T6PHEnt4YmPtPwtJwGznZymwfatfb5XZ8LGx1uwIJIr2A73dhmvVOd9kW+0zLG

bokeh-gl-2.0.1.legacy.js

5+O/mt/EE8swol5CsQWvE+VLZ9e8dz15wR8LnrSPgoOfuiPgwUYVu4CFfNfqwl0L

bokeh-gl-2.0.1.legacy.min.js

MFd9nuhowSs0HAiZcqgit5uea6CarAvl/ZXojy5Qp/wTesO/PWxFeuif9wvZ0pUx

bokeh-gl-2.0.1.min.js

Dv1SQ87hmDqK6S5OhBf0bCuwAEvL5QYL0PuR/F1SPVhCS/r/abjkbpKDYL2zeM19

bokeh-tables-2.0.1.js

aMdLZF7sDh0tgv80fzEJvmpQiLHNl9fRDXpsKyiD2rKXp3lNLWhaU70rmUsQA7u0

bokeh-tables-2.0.1.legacy.js

cctkJX0kinVmnjh6/LyxFUQZ1KAEOVtIW/UQwKqzuMLwYJH/KFUJDKQ2EOzVDDXz

bokeh-tables-2.0.1.legacy.min.js

c6eUimtOrK9ilrJyPMFjX6/jYd58uwpDOPEaujHuA/ghGKdUV1e2ZFWdhJbBDi4B

bokeh-tables-2.0.1.min.js

4BuPRZkdMKSnj3zoxiNrQ86XgNw0rYmBOxe7nshquXwwcauupgBF2DHLVG1WuZlV

bokeh-widgets-2.0.1.js

fZEku/EEZLhynXy4M48PDLbmqjThltP7mY8SrASiZnrKdAAJc9nWWnXzbXPm4e0s

bokeh-widgets-2.0.1.legacy.js

Kbpjb/ErdNXlZIKq8+r2164aftEHpBo1jajKLblc3fL4iUEBJ3wQe+Istw6KTaUO

bokeh-widgets-2.0.1.legacy.min.js

5TVvhxaRp1icVmcX80/0K87aP6Go9jt6VJy9fWCujZ26AcgKOIG2SGkbz0+iJnMu

bokeh-widgets-2.0.1.min.js

xZlADit0Q04ISQEdKg2k3L4W9AwQBAuDs9nJL9fM/WwzL1tEU9VPNezOFX0nLEAz

2.0.0

Bokeh版本 2.0.0 (2020年3月)是Bokeh项目的一个重要里程碑。这个发布周期关闭了180多个问题。亮点包括:

  • 新的,现代的 MultiChoice 已添加小工具 #9532

  • BokehJS CDN资源加载 SRI hashes 启用 #8937

  • 新的 DatePicker 具有更多功能的实现 #9509#9494#6728#8917

  • 包相关导入在目录样式的Bokeh应用程序中工作 #9545

  • 应用程序会话现在使用在查询参数中不可见的可过期令牌 #3458

  • 完整的HTTP头和cookies可以通过Bokeh应用程序代码访问 #9505

  • 参考文档显示了所有Bokeh模型的继承属性 #4966

  • ipywidget可以用于Bokeh应用程序,Bokeh内容可以放在ipywidget中 #9590

  • 为ESRI和OSM添加了磁贴提供程序 #9560

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

最低软件包版本

此版本提高了某些包的最低版本

  • Bokeh现在需要Python3.6或更高版本。

  • Bokeh现在需要Numpy1.11.3或更高版本。

  • Bokeh服务器现在需要Tornado 5.0或更高版本。

服务器生命周期挂钩

服务器生命周期钩子现在应该在一个名为 app_hooks.py ,这也是定义新请求钩子的地方。以前的模块名称 server_lifecycle.py 将继续运行,但已弃用。

HoverTool格式化程序规范

以前, formatters 属性接受了CDS列名。例如,的工具提示的格式化程序 "@foo 可以用just指定 "foo"

hover_tool.formatters = { "foo": "datetime"}   # BAD

现在,完全匹配的工具提示规范,包括 "@" ,应使用:

hover_tool.formatters = { "@foo": "datetime"}   # GOOD

这使得工具提示格式设置器可以与两个列以及“特殊变量”一起使用,例如。 "$x" .

博克狮身人面像扩建

过时的Sphinx配置参数 bokeh_plot_use_relative_pathsbokeh_plot_pyfile_include_dirs 已删除。未使用的 PLOT_PAGE 模板也已删除。

失效的幻影JS使用

已弃用且不受支持的PhantomJS依赖项不再用于导出Bokeh内容。默认情况下,Bokeh将使用Chromedriver,但也可以配置为使用Geckodriver。

对CustomJS“使用严格”

这个 use_strict 属性已从以前使用过的所有模型中删除。所有JavaScript代码,例如 CustomJS 将始终使用 "use_strict" 补充。

require() 在CustomJS中

这个 require() 功能不可从 CustomJS 不再。它公开了底层模块系统,一般用户不应该使用它。使用上公开的API Bokeh 反对或(作为最后手段)使用 Bokeh.require() .

Bokeh协议版本控制

BokehWire协议消息不再表示任何修订,服务器会话的URL也不再指定 "bokeh-protocol-version" . 假设任何通信的客户机和服务器都是相同的版本(在任何使用场景中都是这样)。

选择指令

过时的旧式选择词典,即。 selected['1d'] 已删除。使用 selected.indices 等等。

不可变调色板

以前,Bokeh使用了一个复杂的copy-on-access方案将选项板作为列表返回。有时“黑客入侵”模块会导致复杂的行为。所有选项板现在都是元组,这是解决可变模块属性问题的一个更简单的解决方案。

主要区别在于,选项板不能再就地修改,包括反转选项板。要反转调色板,请执行以下操作:

list(reverse(pal))

瓷砖提供程序

中的命名平铺属性 tile_providers.py ,例如 CARTODBPOSITRON 现在返回该磁贴提供程序的供应商id。这是可以传递给 get_provider 方法直接返回一个新的 TileProvider 实例。

ColumnDataSource属性

这个 ColumnDataSource.selected 属性现在是只读的。

这个 ColumnDataSource.data 属性只能从纯Python dicts设置。试图从另一张CD设置,即 s1.data = s2.data ,将引发错误。

日期和日期时间属性

这个 Date 属性已被缩小,以便提供ISO日期字符串形式的明确日期类型。这个 Date 类型接受ISO日期字符串,并且 datetime.date 物体。

因此, DatePicker 小部件不再接受日期时间值或时间戳。所有值必须有效 Date 价值观。

这个 Datetime 现在直接接受时间戳(从epoch开始的毫秒)。

缺少渲染器警告

这个 W-1000 (MISSING_RENDERERS) 对于添加了批注的绘图,即使没有其他标志符号,也不会再触发验证警告。

UnitsSpec层次结构

这个 UnitsSpec 类现在是基类,它本身就没有用处了。如果你用的是 UnitsSpec 在扩展模型中,您应该更改为使用新的 PropertyUnitsSpec 类,它提供了添加单独 *_units 性质。

中断的Bokeh命令

命令行实用程序 bokeh htmlbokeh pngbokeh svg 早期的实验工具从未被广泛推广。最近发现,自1.0版以来,它们已经损坏,表明它们完全没有使用过。为了减少代码库的混乱,它们被删除了。

BOKEH_VERSION

以前的环境变量BOKEH_VERSION可用于指定从CDN加载BokehJS的哪个版本,现已重命名为BOKEH_CDN_VERSION。

API移除

以下模块和函数以前不推荐使用,或者是内部的,不再需要:

bokeh.client

方法 ClientSession.loop_until_closed 远离的

bokeh.io

功能 create_webdriver 移除,使用 webdriver_control 相反。

bokeh.models.callbacks

方法 CustomJS.from_py_funcCustomJS.from_coffeescript 远离的

bokeh.models.filters

方法 CustomJSFilter.from_py_funcCustomJSFilter.from_coffeescript 远离的

bokeh.models.formatters

方法 FuncTickFormatter.from_py_funcFuncTickFormatter.from_coffeescript 远离的

bokeh.models.plots

属性 Plot.h_symmetryPlot.v_symmetry 远离的

bokeh.models.tools

方法 CustomJSHover.from_py_funcCustomJSHover.from_coffeescript 远离的

bokeh.models.transforms

方法 CustomJSTransform.from_py_funcCustomJSTransform.from_coffeescript 远离的

bokeh.models.widgets.buttons

属性 Dropdown.default_valueDropdown.valueAbstractButton.clicks 远离的。

bokeh.models.widgets.sliders

callbackcallback_throttlecallback_policy 从所有滑块中移除。使用 value 持续更新和 value_throttled 仅用于mouseup上的更新

bokeh.plotting.helpers

移除整个模块

bokeh.protocol

整个 versions 模块已拆下, messages.register 功能已删除

bokeh.util.compiler

等级 CoffeeScript 并删除相关代码

bokeh.util.future

移除整个模块

bokeh.util.string

功能 encode_utf8decode_utf8escape 远离的

另外, callback 属性将从除 CustomActionHoverTool TapToolOpenURL . 相反,更普遍的 js_on_changejs_on_event 应使用方法。

API折旧

以下新的反对意见是有效的:

  • bokeh.layouts.WidgetBox 已弃用 bokeh.layouts.Column 相反。

  • 进口 from_networkxbokeh.models.graphs 已弃用。从导入 bokeh.plotting 相反。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 2.0.0

文件名

搞砸

bokeh-2.0.0.js

TQAjsk2/lDn1NHjYoe8HIascd3/Cw4EWdk6GNtYXVVyAiUkbEZiuP7fEgbSwM37Y

bokeh-2.0.0.legacy.js

KvYk7iMwUT+T6wbXsJNaIbaxXlBNk2id4b4CRlfr0b2M++o+ycEdp9fvMXqrDwZc

bokeh-2.0.0.legacy.min.js

CCIKna2ZIlI0MivXi2r7apQaMx554Ztel6IGoEh0vInb0GdzgeIW2tTkjQxzNxVY

bokeh-2.0.0.min.js

5Y+xuMRAbgBj/2WKUiL8yzV4fBFic1HJPo2hT3pq2IsEzbsJjj8kT2i0b1lZ7C2N

bokeh-api-2.0.0.js

wtdLa278p5B8/9lLHjKx3v1PllDHlUTVqeGMO+00z5Iii6DTlM6Wn2M6EezrscT9

bokeh-api-2.0.0.legacy.js

xEygVlSYXCNxhx/3LL+biSHdP4IBCosQ/a4+3SXafbcygWVgA5HyhsO3O7Xsg593

bokeh-api-2.0.0.legacy.min.js

TPxIDWEddrIyL2IWMd79GCOWaeKcG27aNAp/px+K0F9Aj7l+09sELd4lqdq4fqzg

bokeh-api-2.0.0.min.js

jhjuIqjWjq4QgpHjcldtKYaCU8Wwmlq0niq6Yk5RkWm3Di1WP05WJboVdpmKzuO8

bokeh-gl-2.0.0.js

HXKiX+aZU1CnSpIM8+MS+Z2kObaTt+IPrDRg7VCe4IFUKrIYAtDgV9RZnVtrVnSN

bokeh-gl-2.0.0.legacy.js

nnDqIZuQmxaXtk4EhiVRC3AcMgetsms60jLqqefduePl1VnmvjB9NtZXoKMwxjMR

bokeh-gl-2.0.0.legacy.min.js

5Sy4Qp3254i0UqkYlCULUkAkW6B6MyXzJyrLklStxQwxmIn2Up4EvEb5q74JQwTo

bokeh-gl-2.0.0.min.js

fpJSoIQ2gW/5hIlVy9e7+9nUgvu/7Vw7JV70rKVtzAbp1DEFDfgVO4hr7G1GtzH5

bokeh-tables-2.0.0.js

R9GUSWQi4zC2NFb1iP/MiTd3UyN3Uy6U5jats866GBVfGm2flsPtOduBe0Y2LxZS

bokeh-tables-2.0.0.legacy.js

UHZAShxlRzXd//DAISUiRhjjUU6E1SoLNa7Uzycu7CmR/OYU2Q9MfHmcdznsT3hq

bokeh-tables-2.0.0.legacy.min.js

8GgoJwiRBs3WXJVUgg7SCwG85J0W2eT6RSwblZCqZA3594d15I1JevOV+cTrm8Y1

bokeh-tables-2.0.0.min.js

BGyDyuSaiu0cchXHeEcHeNqhBFiLD5nWxahw58BXz2o1yZvZh4DCAMVUBoIrZfUP

bokeh-widgets-2.0.0.js

zE8U60r320XXO/09Pt8AF+lqqvYfSHXetUsyNzGZXQ7lOz9qGp4DXVVDEuJK2s3G

bokeh-widgets-2.0.0.legacy.js

WawSlUEPeUkkCbhvxy6CTrth9lbhLrQctssY0WrtwoyC3QAuvyeKehyeuPGyy7Ra

bokeh-widgets-2.0.0.legacy.min.js

oKQ2GMrLvR6C63C3fOHg8yRWyEUtYhMiMK5keQH2UBbgpP1XmY+KzQXqud5ooU4S

bokeh-widgets-2.0.0.min.js

2ltAd1cQhavmLeBEZXGgnna8fjbw+FjvDq9m2dig4+8KVS8JcYFUQaALvLT//qHE

1.4.0

Bokeh版本 1.4.0 (2019年10月)是一个重要的版本,标志着对Python2.7和Python3.5及更早版本的支持的结束。

从下一个版本开始,将需要Bokeh2.0、Python3.6或更高版本。

此版本包括几个重要的修复程序和功能:

  • 完成新网站的文档设计,包括搜索 #8209

  • Jupyterlab ipywidgets集成 #9137

  • Bokeh服务器的安全相关改进 #9139#9140

  • 新增fot Django频道集成 #9009

  • 预编译的Bokeh扩展 #9196

  • 图例改进 #9135#9144

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG . #8676

Migration Guide

贬抑

不堪重负 legend glyph方法的关键字参数已弃用。它被替换为三个特定用途的关键字参数:

  • legend_label="some_label"

    这将始终生成具有给定标签的图例项。

  • legend_field="some_colname"

    这将生成一个“分组”图例,其中分组由浏览器中的JavaScript完成。Python代码将只看到一个表示分组的图例项。

  • legend_group="some_colname"

    这将生成一个“分组”图例,其中分组由 Python 代码,否则内容将在浏览器中呈现。Python代码将看到每个组的单个图例项。

这些关键字消除了由于“automagic”操作而产生的歧义 legend 关于图例分组。现有的 legend 关键字参数至少在Bokeh的3.0版本之前仍然有效。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.4.0

文件名

搞砸

bokeh-1.4.0.js

vn/jmieHiN+ST+GOXzRU9AFfxsBp8gaJ/wvrzTQGpIKMsdIcyn6U1TYtvzjYztkN

bokeh-1.4.0.min.js

mdMpUZqu5U0cV1pLU9Ap/3jthtPth7yWSJTu1ayRgk95qqjLewIkjntQDQDQA5cZ

bokeh-api-1.4.0.js

Y3kNQHt7YjwAfKNIzkiQukIOeEGKzUU3mbSrraUl1KVfrlwQ3ZAMI1Xrw5o3Yg5V

bokeh-api-1.4.0.min.js

4oAJrx+zOFjxu9XLFp84gefY8oIEr75nyVh2/SLnyzzg9wR+mXXEi+xyy/HzfBLM

bokeh-gl-1.4.0.js

/+5P6xEUbH87YpzmmpvP7veStj9hr1IBz+r/5oBPr9WwMIft5H4rEJCnyRJsgdRz

bokeh-gl-1.4.0.min.js

nGZaob7Ort3hHvecwVIYtti+WDUaCkU+19+OuqX4ZWzw4ZsDQC2XRbsLEJ1OhDal

bokeh-tables-1.4.0.js

I2iTMWMyfU/rzKXWJ2RHNGYfsXnyKQ3YjqQV2RvoJUJCyaGBrp0rZcWiTAwTc9t6

bokeh-tables-1.4.0.min.js

pj14Cq5ZSxsyqBh+pnL2wlBS3UX25Yz1gVxqWkFMCExcnkN3fl4mbOF8ZUKyh7yl

bokeh-widgets-1.4.0.js

scpWAebHEUz99AtveN4uJmVTHOKDmKWnzyYKdIhpXjrlvOwhIwEWUrvbIHqA0ke5

bokeh-widgets-1.4.0.min.js

xR3dSxvH5hoa9txuPVrD63jB1LpXhzFoo0ho62qWRSYZVdyZHGOchrJX57RwZz8l

1.3.4

Bokeh版本 1.3.4 (2019年8月)是一个微版本,用于测试构建和发布自动化的更改。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.3.4

文件名

搞砸

bokeh-1.3.4.js

hxYaSDo9UOW449HmDfCJM8HEfDssTqfbM2MEj6Y1kX0NWSobeYNMb1yZ+gZEoP99

bokeh-1.3.4.min.js

QGUo+MeWXFKCQ/7fjKTybRP8Ppnp0KBnlT47OxaVTz4GgKZ1FHcE1HQ+E+eQCOhp

bokeh-api-1.3.4.js

nJUu+sx8zSb41hqOdx43gieIbvKctxvE1p9t+pk/LPfEa/NkdXLzabs0l9Ei6IWt

bokeh-api-1.3.4.min.js

uiQK8rYxuWmtxis0SRCPutN+wBC3I2mpeiEcpNBGu0r2I5cZFvxBRp81KQQMd68i

bokeh-gl-1.3.4.js

uMcdujhqERVMJTJ61CtRysRPxg/IHxUyG2Lg1Cz0ZADlyb04LKuVo9JOH8n9fAHD

bokeh-gl-1.3.4.min.js

ADA0PW/OwoRXwpwdip39O2fv8bODqyQrfG7+93px9tBd95sodfrG08hvl4BmlFZ7

bokeh-tables-1.3.4.js

NwpciY1ja7iqnMnmr44ZDhWGkqdEvboTbndFsw+5NxKCZxIMZUYGFvgc4TrPmAW3

bokeh-tables-1.3.4.min.js

zWoUJmvc67QcNkwy37hrt8j8hkx+AnkDxddpM2llEzXmq/rEDQCC65Wlwu2rvdqF

bokeh-widgets-1.3.4.js

lwaiwsl6zHSRB67alfn0bVx0GlBwUovKXqcXZYTuyf0FQz4izhwFF5+YbU4CJmpO

bokeh-widgets-1.3.4.min.js

NuVOeEsS+hhEJQGsO94fKMfY74rRsFLaYpw1VPzGLN2+pwD9m2PkYQ+W56WAYVTi

1.3.2

Bokeh版本 1.3.2 (2019年8月)是一个微版本,用于测试构建和发布自动化的更改。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.3.2

文件名

搞砸

bokeh-1.3.2.js

EohK5rErHRcmdCJbvCpee7KR9k6kXGye6xtuLBvddGY4uPjxQe/L9/vNnvuAiO3C

bokeh-1.3.2.min.js

HvAJhQCPIyzZvnEIfRCKWH7Wpnn4WHCkds1x2ZmltiXsv9zSHgpsul+Gn/6HS8H6

bokeh-api-1.3.2.js

nJUu+sx8zSb41hqOdx43gieIbvKctxvE1p9t+pk/LPfEa/NkdXLzabs0l9Ei6IWt

bokeh-api-1.3.2.min.js

uiQK8rYxuWmtxis0SRCPutN+wBC3I2mpeiEcpNBGu0r2I5cZFvxBRp81KQQMd68i

bokeh-gl-1.3.2.js

uMcdujhqERVMJTJ61CtRysRPxg/IHxUyG2Lg1Cz0ZADlyb04LKuVo9JOH8n9fAHD

bokeh-gl-1.3.2.min.js

ADA0PW/OwoRXwpwdip39O2fv8bODqyQrfG7+93px9tBd95sodfrG08hvl4BmlFZ7

bokeh-tables-1.3.2.js

NwpciY1ja7iqnMnmr44ZDhWGkqdEvboTbndFsw+5NxKCZxIMZUYGFvgc4TrPmAW3

bokeh-tables-1.3.2.min.js

zWoUJmvc67QcNkwy37hrt8j8hkx+AnkDxddpM2llEzXmq/rEDQCC65Wlwu2rvdqF

bokeh-widgets-1.3.2.js

lwaiwsl6zHSRB67alfn0bVx0GlBwUovKXqcXZYTuyf0FQz4izhwFF5+YbU4CJmpO

bokeh-widgets-1.3.2.min.js

NuVOeEsS+hhEJQGsO94fKMfY74rRsFLaYpw1VPzGLN2+pwD9m2PkYQ+W56WAYVTi

1.3.1

Bokeh版本 1.3.1 (2019年7月)是一个热修复微发布修复 #9123 .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.3.1

文件名

搞砸

bokeh-1.3.1.js

gvzEY0xhVHzwW+7ML6zOrcY7QJ5setdu3GtOKu0bLehUNjVND4fZ43wOD4ijVWuZ

bokeh-1.3.1.min.js

F53X81jIKZEulkAZ03WqtV0aOIuVMsP4Fc93kfCNwNUU0VXluJDpH+FCGORdH8WK

bokeh-api-1.3.1.js

nJUu+sx8zSb41hqOdx43gieIbvKctxvE1p9t+pk/LPfEa/NkdXLzabs0l9Ei6IWt

bokeh-api-1.3.1.min.js

uiQK8rYxuWmtxis0SRCPutN+wBC3I2mpeiEcpNBGu0r2I5cZFvxBRp81KQQMd68i

bokeh-gl-1.3.1.js

uMcdujhqERVMJTJ61CtRysRPxg/IHxUyG2Lg1Cz0ZADlyb04LKuVo9JOH8n9fAHD

bokeh-gl-1.3.1.min.js

ADA0PW/OwoRXwpwdip39O2fv8bODqyQrfG7+93px9tBd95sodfrG08hvl4BmlFZ7

bokeh-tables-1.3.1.js

NwpciY1ja7iqnMnmr44ZDhWGkqdEvboTbndFsw+5NxKCZxIMZUYGFvgc4TrPmAW3

bokeh-tables-1.3.1.min.js

zWoUJmvc67QcNkwy37hrt8j8hkx+AnkDxddpM2llEzXmq/rEDQCC65Wlwu2rvdqF

bokeh-widgets-1.3.1.js

lwaiwsl6zHSRB67alfn0bVx0GlBwUovKXqcXZYTuyf0FQz4izhwFF5+YbU4CJmpO

bokeh-widgets-1.3.1.min.js

NuVOeEsS+hhEJQGsO94fKMfY74rRsFLaYpw1VPzGLN2+pwD9m2PkYQ+W56WAYVTi

1.3.0

Bokeh版本 1.3.0 (2019年7月)是一个点式发布,增加了一些有趣的新功能:

  • FileInput widget added #6096

  • 新的DataCube小部件提供了表格数据的分组和聚合 #8100

  • TextInput widget now has a new per-keystroke capability. #8676

  • 现在可以设置 source.data 直接从数据帧 #9052

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOGblog announcement .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.3.0

文件名

搞砸

bokeh-1.3.0.js

wy2+PIm3maus9uYDYc0cku7FK/YZhPclomtlXlPmXqcSnlAqyDDfxZXqhw6NOtSu

bokeh-1.3.0.min.js

HaIutCwfjRbn7WHpFRm/L2WvVUki6RZfPHZ1DsqhGoy/M4yJ0VdVQiFKpeE6ZrZy

bokeh-api-1.3.0.js

pkLtYJrxBkmy8jqWylBV2S97rr/JKTvIXDa3TOFSPZomJtXtwsn3n9WnaA2dKoCz

bokeh-api-1.3.0.min.js

qTwyASzNbuiyKzz0j+uKgJMpPUIfBS1wbEr/+fnB3eMUTQ3JibCGzPjX8wTyc5rY

bokeh-gl-1.3.0.js

QGFuv/RfrL27Vqyds/p6Gg7NrFf20yXuAH7Tc7/7oufRrGONemXUsJ4G8AmQGGlc

bokeh-gl-1.3.0.min.js

2QvOYCx8RvnCTAIxD8SXXzf02XWqHpxMKhsoptQ1hhA7JBoFkz9eHkebwPBLGDqS

bokeh-tables-1.3.0.js

1EJ6UROyLiGCAEjiU6gmIaWeIeqpt0AfiXLFwLh+213EzqdUvvjAALiQVuyVPX5/

bokeh-tables-1.3.0.min.js

ayyYYAvA8tqfur11kBVP3RLElr83x3u+O3YvY/G22751vRDvtIKxuyKhdhLEXp+Q

bokeh-widgets-1.3.0.js

b8x6rSZzuJ3/MBhrIkxffHUaUsboM804zDA40CaI0pMeUaC4zycPFHY59XvACDQx

bokeh-widgets-1.3.0.min.js

gMNOGxDAy9M4pV7bHkWKL6bYt9OxAbOJs6rhuX7+ea+8dALJ61bvrmOguix7f9bx

1.2.0

Bokeh版本 1.2.0 (2019年5月)是一个点发布,增加了一些有趣的新功能:

  • 填充样式/图案填充的样式选项 #6135

  • 内置支持堆叠区域和线 #8848

  • 新的 title 的属性 Legend #6769

  • 滑块 callback_policy 现在适用于Bokeh应用程序 #4540

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

1.2中的新功能

话语场

谷歌群组邮件列表已经失效 . 在它的地方,现在有一个 Discourse site for community discussions . 邮件列表中的所有旧内容都已导入到语篇中,并且可以搜索。

回调策略

滑块添加 value_throttled 属性,该属性仅根据 callback_policy

slider.callback_policy = "mouseup"

# both of these will respect the callback policy now
slider.js_on_change('value_throttled', ...)
slider.on_change('value_throttled', ...)

上面的回调只会在用户调整滑块后释放鼠标时执行。

请注意 value 属性也可用于触发回调,它们将在每次移动时无条件执行。

旧式 callback 属性仍然适用于JS回调,但不久将在bokeh2.0中删除。将军 js_on_changeon_change 今后应使用方法。

堆积面积和线

新的 vareaharea 方法添加了对单方向区域(共享同一索引的两个序列之间的填充区域)的支持。还添加了:

  • varea_stack

  • harea_stack

用于堆放定向区域,以及

  • vline_stack

  • hline_stack

用于堆叠线条。

例如:

colnames = ['y0', 'y1', 'y2', 'y3', 'y4', 'y5', 'y6']

p.varea_stack(colnames, x='index', color=colors, source=df,
            legend=[value(x) for x in colnames])

p.vline_stack(colnames, x='index', color="black", source=df)
图例标题

图例现在支持显示标题:

p.legend.title = "Things"

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.2.0

文件名

搞砸

bokeh-1.2.0.js

4+KQbypUa/uxpWNeDNyRzufi1YlGqZsInZemZigvHdv32WWjdp1KlPEFmf4wzpta

bokeh-1.2.0.min.js

mWbJ8jmrSa+2knhNY9k+1+n76Cpty+egxqOgaFKhsP+OwM8Tbrf7+MEkGEncZ46/

bokeh-api-1.2.0.js

0xhTYoa2v15o3EtJEVKsQjrx1ipFUE0cdCzu0RwDx2UF2yj3lABwBdQfHoaNpCbg

bokeh-api-1.2.0.min.js

4e4aipXilPqIIIY5JJ+3wAlkb9mzjzn/dd11/jeniYRSPWqWWBzO00rpkTyJ+Sci

bokeh-gl-1.2.0.js

mLCxwlced495i8wopmgPu0JvM1onA110FJv5Gqdr9on9Ccy4WCjPZVDOOdHyIWtM

bokeh-gl-1.2.0.min.js

rKTYZL5VxTanIFQYMm/2YJ3FBH5fLFzmkAAg+flp320LO+mVle7IEaRYhXlmwp2/

bokeh-tables-1.2.0.js

Sj0zYcj0PABOSygJwRGZkssJrqE65FLGez7Ui5DmKraR+AvH6eZvdlIBWZw0/peK

bokeh-tables-1.2.0.min.js

MxwNCLd4QwWNk5mNp9+Iuz7DGP6vwxPnYwkA/f4P+uW57uGkApbskjEznL5ZVXRv

bokeh-widgets-1.2.0.js

RZh7VtqT7oE5uCqziEQGJRd7kbqHTAPnSkahkfGBHDCbg8bIyjU+pGvq7xYuKYjB

bokeh-widgets-1.2.0.min.js

PybI+m+ISoRb/8ragk5JtlK+Wn89GsTwz6NczXKduasD8KvuSHaunx57QX/NhMU5

1.1.0

Bokeh版本 1.1.0 (2019年4月)是一个重要的版本,主要涉及布局系统。超过50个与布局相关的问题被关闭,解决了bug、缺少的功能和性能。此版本的其他主题包括:

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

1.1中的新功能

这个 js_link 添加函数是为了使将两个Bokeh模型属性链接在一起更简单:

slider.js_link('value', r.glyph, 'radius')

链接属性 更多信息。

这个 Slider.value_as_date 方法被添加来方便地检索滑块值作为日期对象。

贬抑

以下功能或API在版本1.1中已弃用,将在将来的2.0版本中删除:

  • 在中支持CoffeeScript CustomJS 或自定义扩展。请改用JavaScript或Typescript。

  • 支持 ClientSession.loop_until_closed . 此函数仅用于支持测试,并将从公共API中删除。Bokeh应用程序应该直接在Bokeh服务器上运行。

  • 支持将Python代码“传输”到JavaScript。全部 from_py_func 方法将被删除。请改用JavaScript或Typescript。

变更博克斯芬克斯特

为了支持将Bokeh文件转移到 ReadTheDocs ,对 bokeh-plot 斯芬克斯的指示是必要的。这些是:

  • 打印脚本文件现在总是直接放在文档的旁边,并使用相对URL加载。

  • 配置值 bokeh_plot_pyfile_include_dirsbokeh_plot_use_relative_paths 不再需要了。设置它们将不起作用(但不会破坏现有的生成)。这些配置值将在未来的2.0版本中删除。

我们相信 bokeh.sphinxext 并且这些更改不会对任何用户造成任何破坏。但是,如果出现任何不可预见的问题,请寻求支持。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.1.0

文件名

搞砸

bokeh-1.1.0.js

i6JTfKyFleN5etrHejE0mMxC1ojRunUXzW8AbtoOEmXhDaal+bp5ZTiFHnEmZ6hh

bokeh-1.1.0.min.js

oMrsRASUWaEgdoXnhJNE7i+hMUcd9YLfAvsqc+nbNzWDs74md2vw28Y9PyYDnDCd

bokeh-api-1.1.0.js

uOA/ree+K+qCkPGbiHMGXcgavCa2kwDQ84d8u0ywZif5V6WMgtvRM1W3RR7vP3Cq

bokeh-api-1.1.0.min.js

P+QDPQq5g+PjbZbpmCmmQwBSnwv1ikx7g7WvDI00FoVG1W8NzRGBvNbnWGHz0AZB

bokeh-gl-1.1.0.js

i79a9wGnXni9NxaWcgzkl6tR+l4wSs/ttCv2YC3XvRAOIe+A0RUnm0D5V3JOipOw

bokeh-gl-1.1.0.min.js

t9vFW5DVCN4euZ9tupeZ1CO/U2lneLe3INQGzYfnBe9nQws+y6dMRIXLIRD2b1dL

bokeh-tables-1.1.0.js

hQH/DueMLJWZsj/bckRJs2bcIo1bbBFNbHHQr+z1G9Yh6GQP6zI215ic3hybyrNK

bokeh-tables-1.1.0.min.js

5hEoSrEshPM9GHeSmlta945zxAxsCf4qNGrC/jGb3qe+EeM3F7yZ7PYk5ZHadq2h

bokeh-widgets-1.1.0.js

44Re6Vy1RtmN/ygLt6X8de76/4Upoo4a5JHuRKFbTT0GgwyVNqon8y9517Dry7cn

bokeh-widgets-1.1.0.min.js

KHHmmF1Tt4kLBdZxuSox84wwIszGK9adf6qP2VOTp9KKd0mX69j19g0vHFBsPTX1

1.0.4

Bokeh Version 1.0.4 (January 2019) primarily addresses a security issue regarding yaml.load (#8541).

有关详细信息,请参阅 CHANGELOG .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.0.4

文件名

搞砸

bokeh-1.0.4.js

+nXmcnsMn5+klFrTae7Qcqynq2XIvuvWTSCs3yTR6lh6ajv6X5XSbeyW9rMaqY5q

bokeh-1.0.4.min.js

GQcj6yhUtDYJmIMd9iQvkoORMVh3MfFofWnU8q7XTfSiLGlwMu44ZQkHJLKuXgiR

bokeh-api-1.0.4.js

XlktvJYrwyhD+8uwGi4DhDtxFq/xbEpVYNZGC+MNfcV/6CBISW79vIRm8saU9Isl

bokeh-api-1.0.4.min.js

NSKzY3Xo3QtIQoJyDdrS4WX32aIHy8AKe9EnylHEixnHAK6tiVv5S3b3m5MDmuYm

bokeh-gl-1.0.4.js

EYZpUMzNI2udt3oD7YSGPHthzQ6gt39iMldN1efrrdSrMZqzqxJjoLBHPifzVrxD

bokeh-gl-1.0.4.min.js

pvGNV4tMr8cTWJ6zCy6GgMnOb4vHXXCpnowJw8IQM0aa/XKVUlRVgjQu/BlOCH4L

bokeh-tables-1.0.4.js

2c8KG1SSTwpJvWGZpe7P7Hd6kXBHltLw8IcdaNvNn8Ec4wsMtSpT/6PtJKI/z+uz

bokeh-tables-1.0.4.min.js

1Cp+3MdtkZ0V/9bUsoqxHnvLrb2OoG76DPJNiPzN8Q+fYr1WpVs8IkmtNhJ5HijX

bokeh-widgets-1.0.4.js

Y1ITbV66rAm4sLToJ+ae4QbbfWwn/o/sj0V/Zuly8ZeQuEl9sp1Orl6hsSTzUkIH

bokeh-widgets-1.0.4.min.js

r5YLyp1NS4FDmCEPUgE3UPsalffFN99+rwnCi7PCw66rqZvPnCET3hOXcRVsvPL2

1.0.3

Bokeh版本 1.0.3 (2018年12月)是一个微错误修复和功能发布。

其中一些亮点包括:

  • Enable Copy-and-Paste from DataTable (#7762)

  • 添加多行 TextAreaInput 小装置 (#2828

有关详细信息,请参阅 CHANGELOG .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.0.3

文件名

搞砸

bokeh-1.0.3.js

h9nQ4/EQ+Xi5yICeD0JGFM8cwQBaetCUYuN+Zp3Okx8JD12XmtV2p3WO+oTkE/aC

bokeh-1.0.3.min.js

YpEQX836ZOA8FpMp6Enrn9K06USTUkAmdyN07sC73mC/dLl/rWfVipvtFb9Xiv32

bokeh-api-1.0.3.js

XlktvJYrwyhD+8uwGi4DhDtxFq/xbEpVYNZGC+MNfcV/6CBISW79vIRm8saU9Isl

bokeh-api-1.0.3.min.js

NSKzY3Xo3QtIQoJyDdrS4WX32aIHy8AKe9EnylHEixnHAK6tiVv5S3b3m5MDmuYm

bokeh-gl-1.0.3.js

EYZpUMzNI2udt3oD7YSGPHthzQ6gt39iMldN1efrrdSrMZqzqxJjoLBHPifzVrxD

bokeh-gl-1.0.3.min.js

pvGNV4tMr8cTWJ6zCy6GgMnOb4vHXXCpnowJw8IQM0aa/XKVUlRVgjQu/BlOCH4L

bokeh-tables-1.0.3.js

2c8KG1SSTwpJvWGZpe7P7Hd6kXBHltLw8IcdaNvNn8Ec4wsMtSpT/6PtJKI/z+uz

bokeh-tables-1.0.3.min.js

1Cp+3MdtkZ0V/9bUsoqxHnvLrb2OoG76DPJNiPzN8Q+fYr1WpVs8IkmtNhJ5HijX

bokeh-widgets-1.0.3.js

Y1ITbV66rAm4sLToJ+ae4QbbfWwn/o/sj0V/Zuly8ZeQuEl9sp1Orl6hsSTzUkIH

bokeh-widgets-1.0.3.min.js

r5YLyp1NS4FDmCEPUgE3UPsalffFN99+rwnCi7PCw66rqZvPnCET3hOXcRVsvPL2

1.0.2

Bokeh版本 1.0.2 (2018年11月)是一个微错误修复和功能发布。

其中一些亮点包括:

  • 公开可配置 DataTable 行高 (#8411

  • 修复图例和空散点图示符的问题 (#8395

有关详细信息,请参阅 CHANGELOG .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.0.2

文件名

搞砸

bokeh-1.0.2.js

0jTK+5+/+q7+O+LFk2/AmIe8rkQ3mrmZdhMESnSiYlZAGWypm7x/Xcnn4ozwRBDM

bokeh-1.0.2.min.js

MB1CtyBbhwJtEY/90MXLZO+GwCXQX3KqPa9r+3OEw6pi89PjfnqsNLJe1Hybie9O

bokeh-api-1.0.2.js

XlktvJYrwyhD+8uwGi4DhDtxFq/xbEpVYNZGC+MNfcV/6CBISW79vIRm8saU9Isl

bokeh-api-1.0.2.min.js

NSKzY3Xo3QtIQoJyDdrS4WX32aIHy8AKe9EnylHEixnHAK6tiVv5S3b3m5MDmuYm

bokeh-gl-1.0.2.js

bPAPq2rhiN1b+3/Te8GXQjKw06sQzN8p5k7UUhlwFSeK2+jCpGA9vEprXCOY3Cil

bokeh-gl-1.0.2.min.js

O7NaHDfUGE9DqNi2Q1of3g0esDzKChOiHMij3G/BMPp7oy81sV/FTdyZwgmdA/+e

bokeh-tables-1.0.2.js

LlkjH+41Fi9A0PPILNheU3AGhZSdq+CDCcHxAl/SYFlwYGIQQSKihy0xNEO9vCNN

bokeh-tables-1.0.2.min.js

MyvfExbfucny8HEqeQQ8KplFXOJ8NUh33k9fQfbJY6HFJEt3CjkNBmKmmCbrD91p

bokeh-widgets-1.0.2.js

4ZkUEpDR4V6T9fgF19LB4Az2Ih3HW6zz25j0f+5VWeF4LsAJSnB+Dt83O0CNLgYe

bokeh-widgets-1.0.2.min.js

1eKqmHJT75Elwy7zfQ4iP2wDDQoZWAnV7aISycekMKnC+qeLsub6ZzMJVQEi25W+

1.0.1

Bokeh版本 1.0.1 (2018年10月)是一个微错误修复版本。

其中一些亮点包括:

  • Small fixes for export_png (#8362, #8374)

  • Better cleanup for DocumentLifeCycleHandler (#8367)

  • 修正椭圆,椭圆图例的问题 (#8375

  • 识别颜色的CSS rgb(a)字符串 (#4096

有关详细信息,请参阅 CHANGELOG .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.0.1

文件名

搞砸

bokeh-1.0.1.js

+vfqyEk0+rr8HTfpyCMlOUA9GQrIk+uNRkUDrUk3xGyNqteh8Q7TW1VTdILKFhGL

bokeh-1.0.1.min.js

T4kjnvDzji3k2L8iECnfQhBXZGS6jEosAbkFeXhAQw/NozpEjSOKlKuzXXxRptJZ

bokeh-api-1.0.1.js

XlktvJYrwyhD+8uwGi4DhDtxFq/xbEpVYNZGC+MNfcV/6CBISW79vIRm8saU9Isl

bokeh-api-1.0.1.min.js

NSKzY3Xo3QtIQoJyDdrS4WX32aIHy8AKe9EnylHEixnHAK6tiVv5S3b3m5MDmuYm

bokeh-gl-1.0.1.js

bPAPq2rhiN1b+3/Te8GXQjKw06sQzN8p5k7UUhlwFSeK2+jCpGA9vEprXCOY3Cil

bokeh-gl-1.0.1.min.js

O7NaHDfUGE9DqNi2Q1of3g0esDzKChOiHMij3G/BMPp7oy81sV/FTdyZwgmdA/+e

bokeh-tables-1.0.1.js

wvhUEr7vbUKClQADIxcMySGeg+Xqxtc20dS5vL0VrpA4/Ij7w2APwIQg5Yu86DrS

bokeh-tables-1.0.1.min.js

ZtUO0KDmCDVXB2bNokYGTdirKQOlGd38Und4LaIN3rFQjAEU70RGnw8lvlorRwn3

bokeh-widgets-1.0.1.js

4ZkUEpDR4V6T9fgF19LB4Az2Ih3HW6zz25j0f+5VWeF4LsAJSnB+Dt83O0CNLgYe

bokeh-widgets-1.0.1.min.js

1eKqmHJT75Elwy7zfQ4iP2wDDQoZWAnV7aISycekMKnC+qeLsub6ZzMJVQEi25W+

1.0.0

Bokeh版本 1.0.0 (2018年10月)是Bokeh项目的一个重要里程碑。

其中一些亮点包括:

  • 支持 MultiPolygons 有洞的 (#2321

  • Fixes and improvements to DataTable (#6454, #7116, #7417, #8021, #8040, #8050, #8201)

  • CustomAction 对于用户定义的工具栏按钮 (#8099

  • 普通JSON导出/嵌入函数 (#5231

  • 工具栏 autohide 属性在不在美国时隐藏工具栏 (#8284

  • 回调以允许 AjaxDataSource 调整JSON响应 (#8321

  • Scatter 可参数化标记类型的标志符号 (#5884

  • 默认情况下,重用webdrivers以更快地导出PNG/SVG (#8329

  • 提高测试能力 (#2596#8078#8139#8146#8217#8225

  • 更快的导入时间 (#8309

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

选择的处理

以前版本的Bokeh错误地拥有可以替换数据源的代码路径 Selection 具有全新实例的对象。这是一个错误,导致了几次倒退和其他问题。不幸的是,这个问题在一些版本中一直存在,现在这种情况已经得到了修复,它将需要对一些用户进行一些代码更改以适应正确的使用。

一般来说,您不应监听选择对象本身的更改,即不再执行此操作:

source.on_change('selected', callback)  # BAD, DON'T DO THIS

相反,您应该监听上的各个属性的更改 Selection 物体。例如,当 indices 在选择更改时(例如,在散点图上进行选择时),请执行以下操作:

source.selected.on_change('indices', callback)  # GOOD

任何看起来像上面第一个版本的代码都应该更新为使用第二个版本。这适用于Python或JavaScript回调以进行选择。

虽然这种破坏性的不兼容性是令人遗憾的,但是现在已经有了更广泛的集成测试来维护第二个版本从现在起将始终按预期工作。

新建依赖项

“Pillow>=4.0”已添加到Bokeh运行时依赖项列表中。

实例

以下示例已被删除或更新:

  • app/pivot :此大型示例未聚焦和未维护,已被删除

  • embed/simple :删除旧示例

  • howto/us_marriages_divorces :删除多余的笔记本,将脚本移动到 plotting/file/us_marriages_divorces_hover.py

  • models/file/colorspec.py 删除旧示例

  • models/file/external_resources.py 搬到 latex_extension.py

  • models/file/glyph1.py 搬到 basic_plot.py

  • models/file/grid.py 删除旧示例

  • models/file/line.py 删除旧示例

  • models/file/transform_jitter_coffee.py 已删除不推荐的咖啡脚本示例

  • plotting/file/bar_chart.py 删除旧的/重复的示例

  • plotting/file/brewer.py :已移至 stacked_area.py

  • plotting/file/bollinger.py 删除旧示例

  • plotting/file/joyplot.py 搬到 ridgeplot.py

漂亮的打印功能

这个 pprintpretty 方法依赖于IPython漂亮的打印才能运行。最近对IPython pretty打印机器的更改使其无法使用,除非还启用了“pretty”repr。这导致ipython控制台被大量的输出垃圾,使其无法使用。因此,两者 pprintpretty 方法已被删除。一个“漂亮的”HTML repr仍然可以在Jupyter笔记本电脑中使用。此更改预计不会影响任何正常使用。

Bokeh对象ID

以前Bokeh为每个Bokeh对象生成了唯一的uuid。从这个版本开始,Bokeh默认生成简单的递增整数id。您可以设置环境变量 BOKEH_SIMPLE_IDS=no 恢复以前的行为。简单id的生成要比uuid快,否则这个更改不会影响任何正常的使用。但是,如果要在不同的进程中为单个文档创建Bokeh对象,即使用 multiprocessing 模块,然后您将希望关闭简单ID。(这将是一种罕见和不寻常的用法。)

bokeh.util.plot_utils

这个 bokeh.util.plot_utils 模块已被移除。这个模块只包含内部使用的私有函数。此更改预计不会影响任何正常使用。

bokeh.server.application_context

这个 bokeh.server.application_context 模块已重命名为 bokeh.server.contexts . 此更改预计不会影响任何正常使用。

arguments parameter for server_session

这个 server_session 接受的函数 arguments 没有(也不可能)产生任何实际效果的参数。它已经被立即移除。由于参数不起作用,预计此更改不会影响任何正常使用。

代码库测试

Pytest的“quality”标记已更改为“codebase”。现在要运行代码库测试,请执行 pytest -m codebase . 如果在允许提交之前安装了预提交钩子来运行质量测试,那么钩子代码应该如上所述进行更新。这种变化只会影响那些正在开发Bokeh代码库的人。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 1.0.0

文件名

搞砸

bokeh-1.0.0.js

dgnXExOXGWxH08AryR1aD6AtA47+5PcSJai5zsfP76h/bqwPcEgM/m9X7aa+zKgM

bokeh-1.0.0.min.js

9OgUNL9b8g0W/aXZ1jh605glxu3r3i1NISZQTkNTwDg23Yb5eCjEiYyCrGwG+vLp

bokeh-api-1.0.0.js

XlktvJYrwyhD+8uwGi4DhDtxFq/xbEpVYNZGC+MNfcV/6CBISW79vIRm8saU9Isl

bokeh-api-1.0.0.min.js

NSKzY3Xo3QtIQoJyDdrS4WX32aIHy8AKe9EnylHEixnHAK6tiVv5S3b3m5MDmuYm

bokeh-gl-1.0.0.js

bPAPq2rhiN1b+3/Te8GXQjKw06sQzN8p5k7UUhlwFSeK2+jCpGA9vEprXCOY3Cil

bokeh-gl-1.0.0.min.js

O7NaHDfUGE9DqNi2Q1of3g0esDzKChOiHMij3G/BMPp7oy81sV/FTdyZwgmdA/+e

bokeh-tables-1.0.0.js

wvhUEr7vbUKClQADIxcMySGeg+Xqxtc20dS5vL0VrpA4/Ij7w2APwIQg5Yu86DrS

bokeh-tables-1.0.0.min.js

ZtUO0KDmCDVXB2bNokYGTdirKQOlGd38Und4LaIN3rFQjAEU70RGnw8lvlorRwn3

bokeh-widgets-1.0.0.js

xFmJzLc/1pRxm0E8+HIT0nF4IZPi7H0Z74/qlhIcoKgkJ20JX6dz13LLHc24E0fq

bokeh-widgets-1.0.0.min.js

1eKqmHJT75Elwy7zfQ4iP2wDDQoZWAnV7aISycekMKnC+qeLsub6ZzMJVQEi25W+

0.13.0

Bokeh版本 0.13.0 (2018年6月)是一个增量更新,它添加了一些新功能并修复了几个错误。其中一些亮点包括:

  • 用于常见堆积条形图案例的改进悬停工具字段

  • 新的 CumSum 转换以从客户端CDS列的累计和生成值。

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

x.0.0系列的最终版本是一个小版本。有关详细信息,请参阅 project roadmap .

最大Websocket消息大小

新的命令行选项 --websocket-max-message-size 对于Bokeh服务器可以用来配置Tornado websocket_max_message_size 选项。现在的默认值是20mb,比之前的10mb隐式默认值增加了一倍。

新建悬停字段

现在有两个新的悬停工具提示字段可用:

  • $name 将预取 name 悬停在其上的字形的属性。

  • @$name 将像普通列一样查找列中的值 @ 字段,但将使用 $name 作为列的名称。

这两种方法在叠加条形图中都特别有用。

BokehJS建筑

这个 gulp 工具以前被用作BokehJS的构建系统。这已经被一个更小更简单的构建脚本所取代。这大大减少了构建BokehJS所需的依赖项的数量,并获得了一个完全干净的NPM包安全审计作为副作用。

要立即生成,请运行命令 node make build 而不是 gulp build . 任务名称保持不变。如果你想保留旧的工作流程,例如 git bisect ,建议为创建别名 node make ,例如在bash中 alias gulp='node make' .

行连接默认值

默认值 line_join 样式已从更改 miterbevel ,以避免夸大连接线以锐角相交的角。HTML画布 miterLimit 属性旨在防止此类问题,但当前浏览器似乎不尊重它。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.13.0

文件名

搞砸

bokeh-0.13.0.js

d+rVu1K3XCR/ZdOPn7ZHoAA0I3ezdpq6N1YfmEaDMMUaWoJsY10eprZ/FOA92hjx

bokeh-0.13.0.min.js

TctwjLNha0jCG96wYS7g73qxB7IQHyg9KYFrWGY1vDkUpucOUasaQhAImJ5HRJ3L

bokeh-api-0.13.0.js

yBTGPxaZRNWr3KhgXTR2e6ZYzhC6gjAEoWeEk8LrQbEgDmTNO8M3DGzB9zHCzd9r

bokeh-api-0.13.0.min.js

gOGPVkgRN5HbyNQbJuMHtM0yGG3qVVOosjMlw5tr/q7EZPu3+CqJsLXqF6pDns2K

bokeh-gl-0.13.0.js

DmLpK8wP+7n6Wd6P5VmYbLuIpop0hovo+Gbf+6ey3sHyqtGNFypDdEB4uWN5gIg2

bokeh-gl-0.13.0.min.js

EqrBsPyrwdORn+1tmeiAJt5sIdf7wS3u5hFVxFm/vcw+ynSWlInYsa0b36zPdBQM

bokeh-tables-0.13.0.js

dqrzFiNxCBqxwdiZ4WX1Z68GVE/o2/g0JIwkMrAnqHqAn90rVvS6DSwRKWD1dR9z

bokeh-tables-0.13.0.min.js

aTnhJtmqMsvvwC6mLPaey29fuGhILoxAVUBTj3S4K2QTGopKqUDYiTeduzNa49Cv

bokeh-widgets-0.13.0.js

d28uRolgKdZpW5/N4C1OvPFF1pucs77WNiQc5hW/5oUaLGPHSUvkaNtg++v2iTEM

bokeh-widgets-0.13.0.min.js

kG1FeiKKz0KSugJ5HW9ZreL5DpBY2s2U5IIyrgb4gp9IOEmkegiJxvcKm3BecxIQ

0.12.16

Bokeh版本 0.12.16 (2018年5月)是一个增量更新,添加了一些新功能并修复了几个错误。其中一些亮点包括:

  • 悬停工具现在可用于图像图示符 (#3886

  • BokehJS曝光了一个公众 reset 绘图方法 (#5071

  • 所有级别的分类刻度标签可以旋转(:bokeh issue`7643`)

  • 新的 CustomJSHover 对于高度自定义的工具提示字段 (#7647

  • 坐标轴现在可能在绘图中有固定的位置 (#113

  • 小缩放工具增强功能 (#3126#3125#2427

  • MultiLinePatches 现在用范畴范围函数 (#7462

以及其他一些错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

注意:0.12.x系列是1.0版发布之前的最后一个计划发布系列。有关详细信息,请参阅 project roadmap .

已删除否决

以下函数、参数或功能以前已被弃用,并附有新用法的警告和说明,现在已被永久删除:

  • --host argument to bokeh serve

  • responsive 绘图和布局函数的参数

  • Plot.toolbar_sticky 属性

  • Tool.plot 属性

  • bokeh.sampledata.population.load_population 功能

  • bokeh.util.notebook 模块

释放历史

为了支持在一个页面上发布所有版本信息 bokeh_index_toctree 模块和内容已立即移动到 bokeh_releases . 由于该设施在建筑外没有使用官方的博克文件,因此没有提出任何反对意见。

CDS column_names 属性

ColumnDataSource 模特们有着博克的特性 column_names 用于指定中的列名列表 source.data . 这些信息是重复的,必须以一种脆弱的方式明确保存。它已经被Python和JavaScript中的只读属性所取代,这些属性总是自动准确地报告当前的列名。设置 column_names 不再受支持,但是由于此可能性从未正式记录或演示过,因此预计不会影响任何标准使用。

工具 renderers 属性

以前的默认值是一个空列表,对应于自动选择所有可用的渲染器进行命中测试。现在,一个新的默认值 "auto" 用于此目的,因此空列表可以表示“hit test no renderers”。价值 None 也可用于指示不应发生命中测试。由于通常没有理由将属性显式设置为其默认值,因此预计此更改不会影响任何标准用法。

bokehjs的源目录已重命名

为了完成对TypeScript中bokehjs的重写,源目录从 src/coffeesrc/lib . 此更改仅影响bokehjs的贡献者或其他高级用户(例如,使用Webpack或其他JavaScript模块绑定器重新打包bokehjs时)。

BOKEH_DOCS_MISSING_API_KEY_OK 环境变量

Bokeh不再使用此环境变量。以前 bokeh.sphinxext 默认情况下,如果 GOOGLE_API_KEY 未定义环境变量,可以将此环境变量设置为覆盖该默认行为。现在,默认情况下构建将成功,即使没有定义googleapi键(但是googlemaps绘图不会完全呈现)。为了要求定义一个API(即恢复以前的行为),现在可以设置 bokeh_missing_google_api_key_ok = False 在Sphinx配置文件中。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.16

文件名

搞砸

bokeh-0.12.16.js

dIFtDoU0Gm60Zqy6863ATv2UxMK1Z68uAsQQhP96zPalDuA4G/gtmFtF0i2KAs7R

bokeh-0.12.16.min.js

skhu9SjKVjzk+4dGfSQsZBbttYwscaKdqm5zTu/0vKjh1sqEOhyenq82aatBzQG1

bokeh-api-0.12.16.js

o44K1BG1zUDRF02p1JW6lYaXJW/+B13omtKKVR6YLbQzsKkzJCztfApKwINtGAtm

bokeh-api-0.12.16.min.js

p8L4w1zNjV3sAq9zUWDVPLtcRYj2GOLJeQtLzw4HGS3FKieHTmk/KNxqu7Cq4xJg

bokeh-gl-0.12.16.js

R5d3XVPFCkFHeln9JCkOftuazxXC8vgLc4ScfqC0uCykZODwcgtXVCOCfNjzJ3NK

bokeh-gl-0.12.16.min.js

3hp390fmwlG8lmAXUZCQJNsv/BcMRHS0E+o5IC3SKGmwNxi+Sf4tJHm0PJVUU2Xl

bokeh-tables-0.12.16.js

ofP6yEEGFDN3V6FcfQzTHW9yFTjU+j0JvqIVuL7G8CpxiMBwpJc+ycQHS0T7zWGK

bokeh-tables-0.12.16.min.js

+DoUaLfYcM/+8vudGpErcuwIGmgYwEqa26tcn804/lBxeyt2W0mqOZ5a7Sitx35a

bokeh-widgets-0.12.16.js

LHtDzyc6GgwWl5FcaC1qNDga4Sq0TxuBRhGvLx08+Yk5+gD1h5GHisYKjiMxbdk3

bokeh-widgets-0.12.16.min.js

XkUKi9c932iyQN0/8AjVlGKhlQbCu3HMV9IcU1+nEMnhGAfeQV3TO91NRgI2gie8

0.12.15

Bokeh版本 0.12.15 (2018年3月)是一个增量更新,添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • 解决了几个WebGL错误 (#6867#7087#7211#7681

  • 切换到ChromeHeadless进行CI图像测试,将支持更好的WebGL测试 (#6594

  • 更新数据源选择,使之成为适当的Bokeh模型 (#6845

  • 修复了某些类型的Bokeh服务器使用的内存泄漏 (#7468

  • 为六边形标记和十六进制平铺添加了新的字形,以及 hexbin 方法 #7638 , (#4786

  • 已完成BokehJS端口到TypeScript (#6481

许多其他小错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

另外,我们很高兴地宣布 Bokeh joins NumFOCUS Sponsored Projects .

Migration Guide

DataTable

错误命名的财产 DataTable.row_header 已被弃用。此属性错误地控制了DataTable中索引列的存在。现在,使用 index_position 属性指定索引列在表中的位置(使用 None 以取消索引列)。

此外,新属性 index_headerindex_width 现在可以进一步自定义索引列的外观。

选择

一段时间以来,Bokeh一直需要关注选择的处理。此版本添加了一个新的Bokeh模型 Selection 表示数据源上的选择。拥有一个合适的Bokeh模型使得选择在应用程序中的使用和同步比以前代表选择的“裸dict”更简单。

新的 Selection 模型位于数据源的同一位置,即。 source.selected . 它具有以下属性:

.indices            # which scatter typer indices have been hit
                    # previously selected["1d"].indices

.line_indices       # which point(s) on a line have been hit
                    # previously selected["0d"].indices

.multiline_indices  # which points on which line of a MultiLine
                    # previously selected["2d"].indices

在不久的将来 image_indices 将添加以支持图像字形的命中测试。

所有代码都应该更新以使用这些新属性。暂时 只读 像这样的东西 selected['1d'].indices 将继续与以前一样工作以保持兼容性。但是,以编程方式 设置 选择现在必须经过模式属性,即。 .indices.line_indices 等。

网格边界

当栅格自身的边界设置为时,栅格现在会自动遵从任何现有的轴边界 "auto" . 以前使用的网格总是使用全范围边界。此更改使轴和栅格都使用一致的边界集变得更简单。

小滴答声

次要刻度不再显示在显式设置的轴边界之外。以前的小刻度将在显式范围边界之外显示一个额外的“主刻度”距离。

NO_DATA_RENDERERS

此验证警告在许多合理配置中导致错误或不相关的警告,并且已被删除。

文档和服务器上下文回调

所有 DocumentServerContext 添加回调的方法现在可以多次添加同一回调。删除回调的方法现在接收从上一个添加回调的方法调用返回的值。例子:

# Was
doc.add_next_tick_callback(my_cb)
doc.remove_next_tick_callback(my_cb)

# Now
cb_id = doc.add_next_tick_callback(my_cb)
doc.remove_next_tick_callback(cb_id)

狮身人面像版本

这个 bokeh.sphinxext Sphinx扩展已更新以与当前版本一起使用。现在需要Sphinx>=1.6才能使用扩展。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.15

文件名

搞砸

bokeh-0.12.15.js

/RWwyAMgtd7Z9m1FL/phsJYdlkH9TJgHV7hkN5TqDeksXr6R+iBhcLLw9xL/aMP9

bokeh-0.12.15.min.js

xtaZ4F+LfKS8HjWmdwg1a9yDhyLvv6a6SOaljlPiojPMSPrmt6EXni2YiafWwzBP

bokeh-api-0.12.15.js

MBN14ShOfqTydJ/0muUkkqJEWM3e4BPVKnQ68CBDyEbwOKi12kw41tq4/6g8fdub

bokeh-api-0.12.15.min.js

toEk4yKM9q5NZ8rzgaQatEr+lLhbKtIisLHIW4xKdpbninMQY1z3NS1VKVG+ZwXH

bokeh-gl-0.12.15.js

QCDqHfurOIDCtsispU4LI5bM+ur4IExTJ8hSF8xVm8Z0oEZICsya/CjRLNwy1X7l

bokeh-gl-0.12.15.min.js

DTIGNryy32pP+YqoT2jyivB4TBYYzVBnY8Ilu3/WIhlFrcbzArLPCMDuNGqNCLpT

bokeh-tables-0.12.15.js

e63xpSRoogqktZZ8uocsfOt0QC8zIwKXozxLQk/HOrVmOual2rYfG9l8Fm4/C8XW

bokeh-tables-0.12.15.min.js

4D3hp7UNjBh+pFC/ezCVFUvBGokeJBrbL8DaPh8dTnnmHAyZ9RZva2tnBNs6KyGT

bokeh-widgets-0.12.15.js

xBsplPUCSGWV4R2lLvLdtyVcUusq/+sEbgVYUD3u9LrzBRkEYBNEIN3Sdxz4nvHv

bokeh-widgets-0.12.15.min.js

j2jiGPDYDadudwANUFcoK8e+WPMVtL72ww8uCsOrUimYbzDUR0ovLnl+2m1Egn/4

0.12.14

Bokeh版本 0.12.14 (2018年2月)是一个增量更新,添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • 添加了一些工具来绘制和编辑点、矩形、多线和面片图示符 (#6370 )通过修改底层ColumnDataSource。

许多其他小错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

已删除否决

此版本中已删除以下不推荐的功能:

  • DynamicImageRenderer (考虑 GeoViews 相反)

  • BokehJS支持 *.tsx 模板(通常不面向用户)

  • autoload_server (使用) server_documentserver_session 相反)

新建运行时依赖项

包裹 packaging ,可通过conda和pip获得,作为新的运行时依赖项添加。

未知范畴因素的映射

以前,数据(例如CDS列)指的是在相关的 FactorRange 将导致浏览器中出现错误。现在,任何这样尝试的映射都将静默返回 NaN . 以这些因子作为坐标的任何数据点都不会渲染。

这种改变的实际动机是更新 FactorRange 使用一组新的因子可能会导致不一致,从而触发错误条件,导致绘图失败。随着这一变化,更新因子范围的用例应该工作得更顺利,但是,如果“坏”因子意外地包含在数据中,而不是未呈现的数据点中,则不会立即出现问题。

更改为文本字形图例

以前添加到图例中的文本glyph总是无条件地将单词“Text”作为视觉符号呈现,这是没有用的。现在,文本字形在图例中呈现空白。当需要使用交互式图例静音或隐藏主标志符号以及与其相关联的一些文本时,这很有帮助。有关更多讨论,请参见 #7337 .

商业资源变化

MercatorTileSource 先前捕捉到最近缩放级别的模型导致用户提供的轴范围基本上被忽略。默认行为现在已从捕捉到最近的缩放级别更改为只需保持正确的纵横比,同时保持包含在轴范围内的用户定义边界。

通过设置启用 snap_to_zoom 财产。

定义视图的CSS类

这以前是通过 MyView.prototype.className ,它不尊重类结构,因此通常需要在子视图中复制CSS规则。新的方法是 css_classes() 方法,例如:

class MyView extends MyOtherView {
    css_classes() {
        return super.css_classes().concat("my-view")
    }
}

此更改仅影响自定义扩展的创建者。

HasProps.initialize()

以前 HasProps.initialize()attrsoptions 作为它的论据。这几乎从未使用过,因此被移除。配置bohjs属性的首选方法是使用bohjs属性。此更改仅影响自定义扩展的创建者。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.14

文件名

搞砸

bokeh-0.12.14.js

AdyVAARU6V8NHqeE07dAta6mnteTdD2z6jS9jZHLHsFM1ittJzgpBvmS6QblI21K

bokeh-0.12.14.min.js

mg41Bnny+gFV5+1veejJ4HMw/ySqdL5RuMA92GbeXjIUPX7s4twC5iObeVMqwwub

bokeh-api-0.12.14.js

fEFoAv/9+ERt1KRIfsMFst21yLlhdSIlGqL6Ou5q8NV7yQXkZyYd60xRIiEpoyMQ

bokeh-api-0.12.14.min.js

ke94TPgbPD4VJZxScmszu1C6BQ6fX0NZ6WtG3ks/tMoqooqKWcaMQdWFx5UpxtLF

bokeh-gl-0.12.14.js

jBnzkuaH+FMUpQjRr0CUhmVfvmY+enILE+cUyEsDx2FnCVqNaG6mzvZTUOZGoiBK

bokeh-gl-0.12.14.min.js

kevbn0vAxbaOnSxLaqREN9ti1gFA7qkFckq3fQkfOxpfrNkl/lduadyMz2W4AGGn

bokeh-tables-0.12.14.js

xqIYzAUVqRMGI4NxYES6A0XvBBYeBupSC07EywmaIEZ+fFg/cwHZpsNEnv0daDhD

bokeh-tables-0.12.14.min.js

efZSbA9ELN7x3dlbwa2KqGs6i6Sx0evaPWGmYxa16zaWvUVevjulhlm7eJsgYrzq

bokeh-widgets-0.12.14.js

OBrYBXTgPlm2FtyKyR1sTgT3FdDwitnzgJigWt3cFdhovT2011F/OPl+6kg311xI

bokeh-widgets-0.12.14.min.js

PkcQt2vvCHJbuyOCfJxBoEQcdPk/+MyMyUsCzWXFWE20BNyUANOZERRo+wH1UiNf

0.12.13

Bokeh版本 0.12.13 (2017年12月)是一个针对性的错误修复版本,它解决了两个问题:

  • push_notebook regression in 0.12.11

  • 由于保留的“aux”文件名,Windows包安装失败

有关详细信息,请参阅 CHANGELOG .

Migration Guide

BokehJS变更

BokehJS不再需要定制样式来让“响应式”布局模式工作。这意味着页面中没有添加其他样式,如页边距。这导致页边距的工作方式不同,现在默认为浏览器默认值。如果要恢复以前的行为,请将以下内容添加到HTML中:

<style>
  html {
    width: 100%;
    height: 100%;
  }
  body {
    width: 90%;
    height: 100%;
    margin: auto;
  }
</style>

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.13

文件名

搞砸

bokeh-0.12.13.js

WiiDNdFObp+2mosxfMxtLlAKb4mPRILKkme1FsxTEGp/3dNYLiR9PCjm64c306FF

bokeh-0.12.13.min.js

sRHzMiYSxnSVtIDNmGrWigYi+CSIZ8sZX8zf79whDzHF0zUvtiACSjdggeh2N7jD

bokeh-api-0.12.13.js

uLz7eJguKT/X1Dn2caguvQaL/Moloh3RiGOhPaOAFUr8cFc4Ulv/12UcOknurxAQ

bokeh-api-0.12.13.min.js

RPODqsF9evKgTcL8svvXXnt7wgOSGc/6PAhwwJomZPzNSoJo9fnFI9hZ9UK4Nw2U

bokeh-gl-0.12.13.js

V/Fvnsm8hR7l4aQb/Jqw1HOV++fYSNyg5S6LRQpYVBetBcKrIQ181LhbI3nJeG27

bokeh-gl-0.12.13.min.js

LlPhjRYBT7z3ihubfj4RfyB8qwjZGKuUxKcxxfH6kGm6Lcy1uIni3tLxDX9L8ulB

bokeh-tables-0.12.13.js

ZpGmJZBNCazirAsE0bgMKctxCO/61Msd+eGd/4Up7LKZmq1hvubMdJ5W/EgRy4wd

bokeh-tables-0.12.13.min.js

q1ovPpOfXy4WQuA3X/Qrr/BOiol1HhdChYGUwHdcFStNaU/8UiX/9Q0HSdyVBzJW

bokeh-widgets-0.12.13.js

LyaGfb/ckePVYZsm+U8Q1IVYRlXVgQ3ySiT0eNPqGWj3veUByo9Mr8xWmnIYHZrx

bokeh-widgets-0.12.13.min.js

tNHkmh8tKOxLIS37l43VBxjTJaELDb7P7olitqFdEYB27ghsIxi5dIS6S29tXMvy

0.12.11

Bokeh版本 0.12.11 (2017年11月)是一个增量更新,添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • Step 添加了台阶线的图示符 (#3644

  • 详细程度适用于链接打印 (#5937

  • 笔记本电脑中的Bokeh应用程序更易于创建 (#6565

许多其他小错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

BokehJS变更

为了帮助最终迁移到TypeScript,我们已经切换到新的CoffeeScript编译器。这对于标准用户应该是完全透明的,但是在某些特定情况下,自定义扩展可能需要进行小的更改,例如,“离子范围滑块”需要进行以下更改:

-      onChange: @slide,
-      onFinish: @slidestop
+      onChange: (data) => @slide(data),
+      onFinish: (data) => @slidestop(data),

的简写初始化语法 Range1d(start, end) 由于技术上的困难,博克赫斯被撤职了。完全使用 new Range1d({{start, end}}) 而是语法。短语法可以在某个时候作为 bokeh-api 包裹。

画布布局和相关基础设施(定位、点击测试等)的坐标系是新的“屏幕”,原点位于画布的左上角。此更改不应影响用户,但会影响自定义模型开发人员。遵循最新的开发模式示例。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.11

文件名

搞砸

bokeh-0.12.11.js

g+//0Yv3lMEbkwayzw3Z44zhbq3SBKEgeTwJxXAwN5rTsjEglILDhTcFM6FBp+As

bokeh-0.12.11.min.js

QNG9B1tLDDmAtBzO9wxnUvluDn94GvQSxq28PipAQkA3S7yPE9mmXNX/Abgv6qmV

bokeh-api-0.12.11.js

CrzA8KP1hsLa/P+aRghVEUyiCB9cAeYTM82Gg91cD+QuHuSobCrqD1nxS64/N25o

bokeh-api-0.12.11.min.js

3R4xfaAzCpSJe+OyLtWgsJN8gjJMI1iQUYCao6WWWrq62R/Yf1r1RTXNAO/LlAdX

bokeh-gl-0.12.11.js

UwkrQ3NHCv94BKLQ6yOIvvxaEyN+mJQY7DpoQrdnT5fwzMbs4tQB0+Fbr9MUShYA

bokeh-gl-0.12.11.min.js

E1QPTpn28v7Kl7vRZHnjzQ3MsUhXNRAb1E6/g5mfYfBZAJc2Yn34rbz7pXetByfN

bokeh-tables-0.12.11.js

ypzPP4AZrbGcJQZAlgfeBiSQxpWhDEDc2uRPdHWXhlwDETLswykpfH0sBHBgOaAb

bokeh-tables-0.12.11.min.js

qEdoiWJ9j8yGx5xQEBrGZgKfw2ea/YFM5ccpCogIUgF/pukfFPa7ym31jd3tDEx9

bokeh-widgets-0.12.11.js

S9DSeytH1Sq4eFs8qpSU7bPStYuNs+AJVqBFeTXzavGktOQ0EH38+Fc/2r1CDN3/

bokeh-widgets-0.12.11.min.js

cV/lFoAZmOyZVKCLM4UpkUkNpF9WBv6hr+zH5JR/kV6WzIEUKhSvpXotyUgJdGES

0.12.10

Bokeh版本 0.12.10 (2017年10月)是一个增量更新,添加了一些重要功能并修复了几个错误。有关详细信息,请参阅 CHANGELOG .

Migration Guide

已删除否决

已删除以下先前的不赞成:

  • app_path from functions in bokeh.client.session and bokeh.embed

  • standalone_html_page_for_models from bokeh.embed

  • 'patch''stream' 事件名称(使用 'patching''streaming'

  • webgl, x_mapper_type, y_mapper_type, and tool_events from Plot

  • Glyphs方法现在只接受所有序列字面值或所有列名

  • ResizeTool (以前做了一个无操作)已被删除

新的抨击

布尔函数 responsive 参数到 Figurebokeh.layouts 已被弃用。这个 sizing_mode 应改为使用枚举。使用 sizing_mode='fixed' 对于 responsive=Falsesizing_mode='scale_width' 对于 responsive=True 相反。

函数 bokeh.sampledata.population.load_population 已被弃用。使用属性 bokeh.sampledata.population.data 相反。

代码移动

模块 bokeh.util.notebook 已被弃用。它包含的函数已移动到 bokeh.io.notebook .

函数 bokeh.io.set_curdoc 现在是 bokeh.io.doc.set_curdoc .

命名颜色 物体 现在住在 bokeh.colors.named 而不是直接进入 bokeh.colors . 其他颜色工具,如 NamedColor 已移动到包内,并标记为内部API。对颜色使用字符串名称的效果与以前完全相同。

删除死代码

以下未使用的代码立即被删除:

  • Aggregation from bokeh.core.enums

  • PyPy检测函数来自 bokeh.util

  • 齐柏林飞艇相关代码(支持应来自外部笔记本挂钩)

另外,属性 bokeh.__base_version__ 已删除。在任何时候计算它都会使输入Bokeh的时间比需要的时间长很多分之一秒。预计此更改不会影响任何用户,但如果需要此值,则 bokeh.util.version.base_version 可以使用函数。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.10

文件名

搞砸

bokeh-0.12.10.js

24wuUvIkgTRYjPpWrlbL2KkpW52OlZt+lX7WmkT0BRnPwVNYEvnnHBXAk2F5dh+7

bokeh-0.12.10.min.js

sYWviIk219FMUK8WxRnX+yEc8Wh0RBgHHVgCvARgVcf++ozUcOBgr55ffjlAPTZ+

bokeh-api-0.12.10.js

ujNI1r/KZ0el9vh1i9UzIgMnMOH996wNEhPbWySADVHW/AXQSQCp8374VsQfF6Vi

bokeh-api-0.12.10.min.js

LYP0vjORYFss0F7QlSV8BYwoJBF0h51bv60HCrx2WnScyabAQuf5RACDAOV89StY

bokeh-gl-0.12.10.js

PoU5iMsELEPXVdJXuhg02JIUF4xWx+O4oMF6EJYhAQq5fkUt4eEcr7RWBZi0ymuE

bokeh-gl-0.12.10.min.js

AX9eB59qOq2p1GUEEnnk4WR1Ythz8OrJ1ffSoJ7qqhmzasfbXq4apd37oN1NpLik

bokeh-tables-0.12.10.js

UvYMTvlSHvcMX+WVeE+DSE74YRbsGh8yjG4gTCK2tKp/mS6kwAgnbNZwW1761vhd

bokeh-tables-0.12.10.min.js

Y5luBmCdqiDH/voB/OpykrY2YkFClZ8C/9+1K7HC8jzKIq2gByw3hX8a5UP3cr0v

bokeh-widgets-0.12.10.js

J7whk4Paq3Rzbn1JzyrNRd/QoV05IeGE6xcd6/Fb9oCnFySfkt6/HGo5G1RX1nUm

bokeh-widgets-0.12.10.min.js

s1mZ52KNDpeyMK7UwHgraqkCwUfcNTSyCKmL3ac3A9tvXTsUiPVqSc68lu8xi8SX

0.12.9

Bokeh版本 0.12.9 (2017年9月)是一个增量更新,添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • JupyterLab与 jupyterlab_bokeh 延伸

  • 向客户端发送数组的高效二进制传输

  • 新图形/网络功能的改进

许多其他小错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

已弃用 bokeh.charts 支架已拆下

这个 bokeh.charts 模块,它只是一个兼容性填充程序来加载单独的 bkcharts 包,已被删除。此外,Bokeh本身也不再列出 bkcharts 作为一种依赖。为了继续使用 bkcharts 代码,那个 bkcharts 包装必须单独安装。

已删除不推荐的MPL兼容性

这个 bokeh.mpl 模块和所有支持代码 bokeh.core.compat 已删除。Bokeh不再提供或尝试任何自动MPL转换。

表日期格式化程序更改

回归 0.12.7 导致 DateFormatter 停止工作。这个问题已经解决了,但是“format”属性现在只接受以前接受的JQuery样式格式

  • 标准 strftime 格式化字符串(使其与 DatetimeTickFormatter

  • 以下任何其他预定义格式名称:

    格式名称

    设置字符串格式

    输出示例

    ATOM / W3C / RFC-3339 / ISO-8601

    "%Y-%m-%d"

    2014-03-01

    COOKIE

    "%a, %d %b %Y"

    2014年3月1日星期六

    RFC-850

    "%A, %d-%b-%y"

    2014年3月1日,星期六

    RFC-1123 / RFC-2822

    "%a, %e %b %Y"

    2014年3月1日星期六

    RSS / RFC-822 / RFC-1036

    "%a, %e %b %y"

    2014年3月1日星期六

    TIMESTAMP

    (自纪元起毫秒)

    1393632000000

    请注意,以前可用的格式名 TICKS 不再支持。

删除旧的测试功能

功能 bokeh.testbokeh.util.testing.runtests 已经被立即移除。测试应按照 testing section 开发人员指南。

函数 bokeh.util.testing.print_versions 已立即删除。这个 bokeh info 命令(或 python -m bokeh info )应该改为使用。

重构 bokeh.clientbokeh.document

这个 bokeh.clientbokeh.document 包被重构,以简化维护和测试,并提高总体代码质量。没有任何常用的或演示过的公共api受到影响(示例代码不需要任何更改)。移动或更改的其他文件不会影响用户代码。

Python3.4的官方支持结束

从这个版本开始,Bokeh不再针对python3.4进行连续测试。在python3.4中使用Bokeh很可能仍然有效,但是CI测试不再支持任何保证。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.9

文件名

搞砸

bokeh-0.12.9.js

2n1fTKfEG8NK5eOl/uzz5WRMeBY0IcbbAPRSQl4TAmJSm+oozLKy5mytGXt/LqIg

bokeh-0.12.9.min.js

I518tTmFoEsiziyEXx6KlEya05UciIqD/pI4x9QMsTtRJFP4/qKRTgIEaqfxdB8u

bokeh-api-0.12.9.js

ujNI1r/KZ0el9vh1i9UzIgMnMOH996wNEhPbWySADVHW/AXQSQCp8374VsQfF6Vi

bokeh-api-0.12.9.min.js

LYP0vjORYFss0F7QlSV8BYwoJBF0h51bv60HCrx2WnScyabAQuf5RACDAOV89StY

bokeh-gl-0.12.9.js

PoU5iMsELEPXVdJXuhg02JIUF4xWx+O4oMF6EJYhAQq5fkUt4eEcr7RWBZi0ymuE

bokeh-gl-0.12.9.min.js

AX9eB59qOq2p1GUEEnnk4WR1Ythz8OrJ1ffSoJ7qqhmzasfbXq4apd37oN1NpLik

bokeh-tables-0.12.9.js

4at7SGvhXY2VhFe4ZARxFWhIbzSzXfAV68lCat/l7rl0jsqX7VFUAWVCXFxVMMAb

bokeh-tables-0.12.9.min.js

pEnsftOgAy6mKfcHRYQzkJGOD2vJUA4FA98bHr3OJB8Kv44I2xBg4Zp2zCGJTFFL

bokeh-widgets-0.12.9.js

LqD/CiBCC2xzX8apdwyTu8Ruq5Fdssk/yFBqAwZFEZ9ntLruKbaTpqvMEZZE8pBW

bokeh-widgets-0.12.9.min.js

wLFPxWauAhKbpqxsaO0BWG+zw7IVcUDHMQ0NDNOx8rQ6W/3bk1Gztl49IlFsS8GB

0.12.7

Bokeh版本 0.12.7 (2017年8月)是一个增量更新,添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • 支持图/树/网络 (#187 )包括用于突出显示和选择的可配置和可扩展策略。

  • 可过滤/可切片的CDS视图 (#4070

  • 将HTTP请求参数传递到嵌入式会话 (#5992

  • 新的 Expression 客户端计算的模型,包括 Stack ,用于堆叠CD列。

  • 新模块 bokeh.transform 使用帮助函数简化 DataSpec 表达式,包括 jitter()dodge()factor_cmap() 等。

  • 补充 hbar_stack()vbar_stack() 大大简化堆积条形图的创建。

  • 对分类数据使用Bokeh的改进:

    • 支持多级类别和层次轴

    • 对类别名称的任意限制(例如 ':' )已经被解除

    • 可选的Pandas集成直接从 GroupBy 物体

    • 分类栏,热图和散点图更容易创建与稳定 bokeh.plotting APIs

    • 新用户指南章节 处理分类数据

许多其他小错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

Bokeh应用程序的新嵌入函数

两个新的嵌入函数类似于 autoload_server 添加了具有更简单的API且更专注于:

此外,使用这些新方法,可以选择不通过传递来加载JS/CSS资源文件 resources="none" 作为参数。

已删除否决

以下以前不推荐使用的模块或功能已被删除:

  • bokeh.icons 模块

  • 旧锚和图例位置 left_centerright_center

  • ImageRGBA.rowsImageRGBA.cols 性质

  • HBox and VBox in bokeh.layouts

  • validate keyword argument for bokeh.io.save

新的抨击

bokeh.embed.autoload_server 已被弃用,并被两个更简单的函数替换 server_document()server_session() 如上所述。

bokeh.models.tools.tool_events 已被弃用。用户应该使用 SelectionGeometry 事件出现在 PlotFigure .

DynamicImageRendererPlot.add_dynamic_image 已被弃用。对于构建在Bokeh之上的与GIS相关的用例,考虑使用 GeoViews, 或者创造一个 Custom Extension .

ResizeTool 已弃用,而且 立即 在Python方面是不可操作的。 ResizeTool 已经被从博克希斯完全移除。

BokehJS Widgets捆绑包拆分

这个 bokeh-widgets 包裹被分成 bokeh-widgetsbokeh-tables . 这是为了减轻主窗口小部件包的重量。Bokeh包括 bokeh-tables 必要时自动进行,因此此更改对大多数用户应该是透明的。但是,自定义模板或其他高级嵌入方案的用户(包括使用 components )可能会受到影响。简而言之,如果应用程序负责加载Bokeh资源,那么它应该负责加载 bokeh-tables 也。

TAPTOL回调调用约定

TapTool通过将glyph数据源作为 cb_obj . 这一点已经纠正,现在工具遵循通常的约定:工具本身被传递为 cb_obj 数据源作为可选的 cb_data . 现有用途 OpenURL 不受此更改的影响,但任何 CustomJS 与tap工具一起使用的回调需要更新以反映这种变化。

数据表选择突出显示信号

DataTable现在响应信号 source.change.emit() ,而不是 source.properties.selected.change.emit() ,以直观地突出显示数据表中属于所选内容一部分的行。如果你用过 source.properties.selected.change.emit() 在CustomJS代码中,需要将其更改为 source.change.emit() .

DataTable会自动响应其数据源的更改 selected 财产。不过,由于博凯的检测机械发生变化,只能更换一台 selected 属性导致发出更改信号,而不是部分更新(例如。 source.selected['1d']['indices'] = [1, 2] ). 如果在CustomJS代码中使用部分更新,则需要自己发出更改信号:

customjs = CustomJS(args=dict(source=source), code="""
    source['selected']['1d'].indices = [1, 2]
    source.change.emit();
""")

重构 bokeh.server 内容

这个 bokeh.server 为了便于用户使用和维护更为复杂的文档,对模块进行了重构。这些变化预计不会以任何方式影响Bokeh的标准使用:

  • 所有与协议相关的代码都被移到了一个新的模块中 bokeh.protocol

  • 这个 Server 班级被分成 Server (没有API更改)和一个新的 BaseServer 当需要对低层龙卷风组件进行明确协调时,可以使用该选项。

  • 缺少的部分添加到参考指南中,DocsString的覆盖范围大大扩展。

  • 旧的cruft代码处理龙卷风<4.3(不再支持)被删除。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.7

文件名

搞砸

bokeh-0.12.7.js

/ld0KP07pf7lZc55FlwoLl9lk7CNTc1mPZJvU3PwQw7CWthXWVxbrgAVuAY70X8/

bokeh-0.12.7.min.js

+RfX0YY5wv1KfGMO5x6HaRfsQ9+ZAATz8fDywqb4aDRQ8FOTAG5a091arhLV8p8M

bokeh-api-0.12.7.js

X9t3I5FPdAgoDLwqikoE+y4dTlAu7n33OCZNgEnC9A7DCJu8ujRwLjB0jDl2mG06

bokeh-api-0.12.7.min.js

Q+EoDtrOzWkjDIpBmAzOFpHLWHjRW37tEh+UfkYAKA8vmOAjbclEnHlBlqHEMLha

bokeh-gl-0.12.7.js

DYAGA4wxOEqV0K7C3dnw4lyV0oJ1vS2JWEysxtgm/kau2nwTagMTbrkVkOOUqH3J

bokeh-gl-0.12.7.min.js

et5wq1hRP0ykcvc/kTLKsmlnpNUDXwG+b8LwOU12m07Nhy/1TwC9yaextPY547gt

bokeh-tables-0.12.7.js

qpalFNg054WcmQsAPAj0sxH366MxIS8BUgAblVbJpVvc6n0OzLDeJ4qRXJP3VgCJ

bokeh-tables-0.12.7.min.js

G2DyioXSr8CoVHnmywGwI6iv+k2ROJXzkTsopt1gPdsOVcn3UefdtN5Q7Bcll651

bokeh-widgets-0.12.7.js

OWyvNsHW2p7dw4Me3EV2atyuOhN+hykUg6f6Q9axGNLDMaGYRpcslxIJsaUohGn8

bokeh-widgets-0.12.7.min.js

m4K1Q2SPhuMlk1ntlcCvYIowdzUQ9depV0g2eG37C+xqrnPpl7gRhOxNIIHdZrjR

0.12.6

Bokeh版本 0.12.6 (2017年6月)是一个增量更新,它添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • SVG和PNG图像的无头、程序化导出 (#538

  • 新批注 BandWhisker 用于显示误差估计 (#2352

  • 图像和其他“多”字形的细粒度子元素修补 (#6285

  • 悬停命中测试扩展到段和所有标记 (#5907#5907

  • 从表中选择要排序的数据修复 (#3564#6115

  • 布局系统的大规模清理和重构 (#4764#4810#5131#5518#6213#6287

  • 改进了悬停工具字段和坐标轴刻度标签的格式选项 (#1239#1671#2595#6079

还包括许多其他的错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

随着项目接近1.0版本,有必要进行一些更改,以使接口和功能达到可以长期维护的程度。我们尽量限制这种变化,并有一段时间的贬抑。

新折旧

这个 Plot.webgl 属性已被弃用,而不是新属性 Plot.output_backend 为了避免WebGL和新的SVG后端之间的冲突。如果你正在使用 plot.webgl = True ,您应该切换到设置 plot.output_backend = "webgl" 为了未来。

删除旧的抨击

之前的所有反对意见 0.12.3 已经被移除。以下是清除的完整列表。

  • 已弃用 Button.type 属性已被删除。

  • 已弃用 Legend 性能: legendslegend_marginlegend_paddinglegend_spacing 已被删除。

  • 已弃用 DatetimeTickFormatter.formats 属性已被删除。

  • Tool 维度不能仅使用枚举值指定。

秤的新模型

已移动并重命名以下BokehJS类:

旧的

新的

mappers/LinearMapper

scales/LinearScale

mappers/LogMapper

scales/LogScale

mappers/CategoricalMapper

scales/CategoricalScale

以前,这些映射器类是内部实现细节。新的Scale类是一流的Bokeh模型,可以从Python访问。这样做是为了方便将来支持自定义、用户定义的比例尺的工作。

新的打印验证检查可确保标注上的比例和范围兼容。默认情况下, Plot 模型配置有 LinearScale 模型 LogScale 型号)兼容 Range1dDataRange1d 范围模型。

一个不可避免的突破性变化是用户使用 FactorRangebokeh.model API必须指定 CategoricalScale 在同一维度上。例如:

plot = Plot()
plot.x_range = DataRange1d()
plot.y_range = FactorRange(["Mon", "Tues", "Wed", "Thurs", "Fri"])
plot.y_scale = CategoricalScale()

这个 bokeh.plotting.figure 函数应该在大多数情况下自动处理这个范围和规模的兼容性。

作为这项工作的一部分,一些BokehJS属性被重命名为与新术语一致:

旧的

新的

CartesianFrame.x_mappers

CartesianFrame.xscales

CartesianFrame.y_mappers

CartesianFrame.yscales

GlyphRenderer.xmapper

GlyphRenderer.xscale

GlyphRenderer.ymapper

GlyphRenderer.yscale

由于这些属性可能存在于用户代码中(例如CustomJS回调或扩展),旧名称将在一段时间内继续工作,JS控制台中会出现一个弃用警告。

新信令API

以前,BokehJS使用主干事件进行模型之间的通信。作为正在进行的TypeScript迁移的一部分,主干依赖关系被删除,相关部分替换为用于信令的最小的、类型安全的API。

这种变化主要影响到从事BokehJS的贡献者和扩展的编写者。

旧的

新的

@listenTo(obj, 'change', fn)

@connect(obj.change, fn)

@listenTo(obj, 'change:attr', fn)

@connect(obj.properties.attr.change, fn)

obj.trigger('change', arg)

obj.change.emit(arg)

obj.trigger('change:attr', arg)

obj.properties.attr.change.emit(arg)

Python日期时间处理

Bokeh没有用NumPy一致地处理Python的datetime值 datetime64 . Bokeh的目标是“按原样”处理所有的datetime值,但在某些情况下,本地时区转换可能会影响Python的datetime值。这已经纠正了。如果存在依赖于错误行为的代码,请注意,新行为立即生效,并且现在在测试中保持与NumPy值一致。看到问题了吗 #5499 了解更多详细信息。

布局API和行为更改

布局以前是在文档级别处理的,每个文档都有一个解算器。这被改为每个根节点一个解算器,所以文档不再负责任何与布局相关的东西。所有的逻辑和api都被移到视图中,特别是 LayoutDOM . 例如,如果您的代码依赖 document.resize(width, height) ,那么您应该使用 view.resize(width, height) 在哪里 view 是任何 document 的根模型。可以通过 Bokeh.index . 要调整所有根的大小,请使用

for (var key in Bokeh.index) {
    Bokeh.index[key].resize(width, height);
}

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.6

文件名

搞砸

bokeh-0.12.6.js

yuTJIeFzKLvXJATEKzHEZJMp6170bM1lhGys3XlRXLDAhi35AVSh3fSYj5zi3Vv/

bokeh-0.12.6.min.js

4tDF9sScHf9MXa2fjqscXvya4toDp1qkMjKV5IAHCsKjjNYjwzb4E8nMXnv4FH1h

bokeh-api-0.12.6.js

LuyjO3NBTzD1trIgR0YHiJXb6B2tI2LxlshHzyT90uh0LSuXLvhpzifWEqiosUqh

bokeh-api-0.12.6.min.js

Y2+wn2SuS6G+zMrQkaxNBE1N681JOlqXDAk3CMdizqH38Fn0pErqUtuj+AnOiUwM

bokeh-gl-0.12.6.js

iV2qx/b9hTfsoQPEqVi+VOcGFPD/OmEOneiKV9eo/gvYkosLmpId3rei6QuurgiN

bokeh-gl-0.12.6.min.js

HeABFVmmmh1192H07OBKFeiRtSlzgcuABlx/F16Lt7IyLHV6cgDQMr2oQddLBWTv

bokeh-widgets-0.12.6.js

GYYzrxfoC3HMVHGhK+0ffUYqzWEAkMX/oAx+TM70McqE8VmY1XmJ2yuyufPmC2QO

bokeh-widgets-0.12.6.min.js

4Y6fHl915BdC7Qzb9Jd8giud/Ix+Z1ySGpF8TO977kYCfsCXP89cZt9WpgRfKCr4

0.12.5

Bokeh版本 0.12.5 (2017年3月)是一个增量更新,添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • Python/JS事件的新通用功能 (#3210#3748#5278

  • Bokeh应用程序可在Jupyter笔记本电脑中轻松查看 (#3461

  • 令人困惑 --host 不再需要参数 (#5692

  • 交互式图例现在可以控制字形可见性 (#2274#3715

  • GMapPlot 包括一个新的 gmap 用于轻松创建谷歌地图绘图的功能 (#2822#2940#3737#4835#5592#5826#5845

  • CustomJSTransform 现在可用于CD列 (#5015

  • 复杂的“pivot”示例应用程序 (#5894

  • 主题现在可以使用 components 在Jupyter笔记本里 (#4722#4952 , )

还包括许多其他的错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

已知问题

中定义的ClientSession API bokeh.client.session ,如 push_session ,当前不支持新的 on_event Bokeh服务器应用程序中UI事件回调的接口。您可以在GitHub上跟踪该问题 (#6092

随着项目接近1.0版本,有必要进行一些更改,以使接口和功能达到可以长期维护的程度。我们尽量限制这种变化,并有一段时间的贬抑。

新的抨击

不推荐使用MPL兼容性

Bokeh的MPL兼容性是使用第三方库实现的,该库只公开了Matplotlib功能的一小部分,现在不再被积极维护。不幸的是,Bokeh团队没有足够的资源来继续支持这个功能 极其 能力有限,结果往往不合格。因此,为了支持项目的长期健康运行,决定在发布1.0版本时取消所有MPL兼容性支持。当前使用的任何代码 to_bokeh 将继续使用弃用警告直到那时。

这个 bokeh.embed.standalone_html_page_for_models 方法已被弃用,而不是 bokeh.embed.file_html . 详情见 pull request 5978 .

这个 validate 关键字参数 bokeh.io.save 已被弃用。未来使用 bokeh.io.save 输出文件之前总是先验证文件。

已删除否决

之前的所有反对意见 0.12.0 已经被移除。以下是清除的完整列表。

已删除的模块、函数和类:

删除的功能

模块已移除

移除类

bokeh.embed.components

bokeh.browserlib

bokeh.core.properties.TitleProp

bokeh.charts.hplot

bokeh.mixins

bokeh.models.layouts.GridPlot

bokeh.charts.vplot

bokeh.plotting_helpers

bokeh.models.layouts.VBoxForm

bokeh.io.hplot

bokeh.properties

bokeh.io.vplot

bokeh.templates

bokeh.io.vform

bokeh.plotting.hplot

bokeh.plotting.vplot

方法 bokeh.document.addpush_notebook 属于 ColumnDataSource 已被删除。

这个 bokeh.io.output_server 功能也已被删除。另外, bokeh.io.push 以及其他支持函数或属性 output_server 已删除。这包括这些函数从其他模块的任何可传递导入。

另外,物业 bokeh.charts.builder.Builder.sort_legend 以及的以下属性 Plot

  • border_fill

  • background_fill

  • logo

  • responsive

  • title_text_align

  • title_text_alpha

  • title_text_baseline

  • title_text_color

  • title_text_font

  • title_text_font_size

主机参数已过期

这个 --host 现在不需要参数。为了兼容性,提供它当前将导致显示警告,但否则将被忽略,应用程序将正常运行。在将来的版本中,提供它将导致错误。

这个 --host Bokeh服务器的参数很混乱,很难解释。只要Bokeh服务器依赖HTTP“host”头来提供资源的url,那么 --host 参数是防止某些类型的HTTP欺骗攻击的必要预防措施。但是,Bokeh服务器已经更新,不再需要使用“host”头(这是在测试中维护的)。因此,不需要对“host”头的值进行任何检查,等等 --host 不再需要了。

文档和模型重构

为了这个 document.pymodels.py 只包含用户通常感兴趣的内容,进行了一些更改和重新排列。

这个 abstract 班级装饰师已从 models.pyhas_props.py . 类装饰器现在还向任何标记为abstract的类的docstring添加一条警告,即直接实例化是没有用的。

元类 Viewable 已重命名为 MetaModel .

这个 document.py 模块已经被拆分,大多数用户不感兴趣的部分已经被转移到更好的位置。

这些更改不会以任何方式影响用户代码。有关完整的详细信息,请参见 pull request 5786 .

JQuery和下划线.js从BokehJS移除

JQuery作为BokehJS的构建依赖项已被删除。变量 Bokeh.$ 不再可用。如果您需要JQuery(例如,对于自定义扩展或使用JavaScript API时),您需要显式地提供它。

下划线.js已作为BokehJS的生成依赖项被删除。变量 Bokeh._ 不再可用。如果你需要下划线.js(例如,对于自定义扩展或使用JavaScript API时),您需要显式地提供它。

这两个删除加在一起导致缩小的BokehJS库的大小减少了约10%。

更改为最近点的线的默认工具提示位置

显示直线的工具提示时,新的默认设置是标记最近的点,而不是以前的点(以前是默认点)。

仅限于查询参数的应用程序的HTTP请求信息

这个 request 以前的属性被添加到会话上下文中,作为公开HTTP查询参数的一种方式。发现提供整个请求与以下内容的使用不兼容 --num-procs . 找到一个方法来满足对查询参数的原始功能请求,以及 --num-procs (但是 only 查询参数)。因此,现在可以访问的唯一属性 request.arguments ,例如:

curdoc().session_context.request.arguments

正在尝试访问上的任何其他属性 request 将导致错误。

默认保存文件

如果无法写入用户指定的或默认的目标,则会生成一个临时文件。这主要影响使用 output_file 在交互式会话中 PermissionError . 详情见 pull request 5942 .

这个 bokeh.io.save 方法现在只接受 LayoutDOM 对象,不再是 Document 对象 obj 争论。这将对齐 bokeh.io.save 参数类型 bokeh.io.show .

bokeh例子的重组

示例,位于低层 examples/models ,被分成 fileserver 示例和可在 examples/models/fileexamples/models/server 分别(类似于绘制示例)。

不允许通过URL参数启用WebGL

以前可以使用 ?webgl=1 URL参数。加上一个单独的 bokeh-gl 捆绑包,此用法不再受支持。仍然可以使用 Plot.webgl 财产。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.5

文件名

搞砸

bokeh-0.12.5.js

4DNzidCdN8aYp81JeCInwqaBLKyQR/JP1kdELZcOh4UYlsx8cre8OP0QyK1C8EA8

bokeh-0.12.5.min.js

iiPwCVeZU7az2esGQM/Wo34Wz+YXekOSMmAonk2E57M7v2oSY69PwQKbZjK2OkVN

bokeh-api-0.12.5.js

91d8HQiwFYWXm+YPR3KqLLd27+dRfL7kPGkD8Lx8BIAFLBMssvq+zVecLR1Wb6Gz

bokeh-api-0.12.5.min.js

fS6mK2OeA4UbjFziCGknV6rsU/PNYisHJUCGagFxWm99naMFFI3AMNRipudPRxSN

bokeh-gl-0.12.5.js

bdjSpVgYc2XM0oXsdutNv5rh+OKfctqNs9prb2ivjqMfhP3NqQ6e3oCdUDaW7AGC

bokeh-gl-0.12.5.min.js

MknEg23HbnmbWsXPaMWpkBpnpYFyMQWIPlHQ5fNxfGgJEAGuIsAVHoiALGr6N5hJ

bokeh-widgets-0.12.5.js

J8ZQo9Ffxqfe40yjv301YypsNM4hjTsq/asV6trp+Pwf/hbVyqya9cKJfYHld+v0

bokeh-widgets-0.12.5.min.js

yoMll6tqpQN7Gf5Pkv1n2Ufnd+z1n+376UxE0dQvAjTZSn5dsCg2SCQOHnRpBb5g

0.12.4

Bokeh版本 0.12.4 (2017年1月)是一个增量更新,添加了一些重要功能并修复了几个错误。其中一些亮点包括:

  • 高效的二进制数组协议。 (#2204

  • 添加的一般机制 CustomJS 对任何属性的回调。 (#5498

  • 记录绘图的几个修复。 (#2789#3834#5389#5549#5576

  • 与自定义扩展相关的修复。 (#5315#5590

  • 直接在独立脚本、Jupyter笔记本电脑、Tornado和Flask应用程序中嵌入Bokeh服务器的指南和示例。

  • 支持只读(客户端)属性,例如打印内部尺寸 (#5199

  • 改进了 bokeh.palettes 模块。 (#5619

  • 的主要重构 bokeh.core 包括扩展文档和测试 (#5626#5627

许多其他小错误修复和文档添加。有关详细信息,请参阅 CHANGELOG .

Migration Guide

随着项目接近1.0版本,有必要进行一些更改,以使接口和功能达到可以长期维护的程度。我们尽量限制这种变化,并有一段时间的贬抑。

已删除断开的对话框

这个 Dialog 小工具坏了一段时间了。由于缺少关于它的用户报告,并且由于自定义扩展现在为用户提供了集成第三方JS对话框库的路径,这个小部件已经被立即删除。

自定义扩展导入/导出

BokehJS正在缓慢地迁移到TypeScript,以支持长期的稳定性和可维护性。这就需要对编写自定义扩展进行一些短期更改。

JavaScript扩展代码 requiresmodule.exports ,例如:

Model = require "model"

class DateGapTickFormatter extends TickFormatter
    # implementation here

module.exports =
    Model: DateGapTickFormatter

应改为:

import {Model} from "model"

export class DateGapTickFormatter extends TickFormatter
    # implementation here

图例位置

为了提高一致性,以下位置名称已更改:

旧位置名称

新位置名称

left_center

center_left

right_center

center_right

旧的位置名称将在一段时间内继续工作,并显示一个弃用警告。

应用程序当前目录

目录风格的应用程序不再 chdir 进入应用程序目录。模块属性 __file__ 应用于构造相对于 main.py 供使用 open 等。

窗口标题

Bokeh应用程序嵌入 autoload_server 将不再设置浏览器窗口标题。

的位置参数顺序 hbar

为了提供更好的交互帮助(真正的函数签名和丰富的自动生成的docstring),命令 leftright 参数到 hbar 必须交换(默认参数后不能有非默认参数)。新函数签名是:

p.hbar(y, height, right, left=0, **kwargs)

旧的 bokeh-server 命令已删除

从0.11开始 bokeh-server 命令仍然存在,只打印了一条指向有关使用的信息的消息 bokeh serve . 它已经被完全移除了。

克鲁夫特 auto 删除的功能

中的以下函数 bokeh.io 长期未使用并已被移除: autoaddautopushautosave .

不再支持Eco模板

BokehJS已迁移到使用 .tsx 模板。临时支持包括 .eco 模板已经从BokehJS和Bokeh Python库中删除。

Base64序列化和Python3.3

对NumPy数组使用base64编码的二进制协议意味着Bokeh将 not 由于python3.3中的一个bug,在python3.3上使用NumPy数组。一种可能的解决方法是将所有数组转换为纯python列表。提醒一下,Bokeh官方支持只包括Python2.7和3.4+。

BokehJS BackboneView公司 $ 远离的

作为从BokehJS中完全删除JQuery依赖项的长期努力的一部分 $ BokehJS添加到的属性 BackboneView 已删除。使用例如。, @$el.find 相反。

另外,使用 Bokeh.$Bokeh._

重构 bokeh.core

所有这些变化都应该低于标准用户所能接触到的水平。为了完整起见,这里列出了这些更改。

过大的 bokeh.core.properties 模块已拆分。这提高了可维护性,并允许 bokeh.core.properties 仅限于那些对用户编写定制模型可能有用的东西。新的文件结构:

  • bokeh.core.has_props

  • bokeh.core.properties

  • bokeh.core.property.bases

  • bokeh.core.property.containers

  • bokeh.core.property.descriptors

  • bokeh.core.property.descriptor_factory

  • bokeh.core.property.override

以下类名已被更改以提高意图和清晰度(即,只有实际上是Python描述符的东西才被命名为“Descriptor”):

旧类名

新类名

PropertyFactory

PropertyDescriptorFactory

PropertyDescriptor

Property

ParameterizedPropertyDescriptor

ParameterizedProperty

BasicProperty

BasicPropertyDescriptor

DataSpecProperty

DataSpecPropertyDescriptor

UnitsSpecProperty

UnitsSpecPropertyDescriptor

在此过程中删除了以下未使用和无用的属性: AlignEventFunctionThis .

的默认值 owner 的参数 __get__ 属性描述符上的方法是对标准Python描述符协议的不必要更改,已被删除。

另外, HasProps.set 方法已被删除。该名称导致Sphinx docs构建出现问题,并且它是 HasProps.update (应该使用)。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.4

文件名

搞砸

bokeh-0.12.4.js

Ee/v4s+NP3AElV8g4OUNydSXDwixBe4XLQSDY5s1yhbHYyTMtgJAp+aJ+squhT+k

bokeh-0.12.4.min.js

JVZO+DlFPt6cXd5Ern7+yTbwzg5F0Le9BbQxGqJrAwuAa88BwOdta+VvgjLhEaWl

bokeh-api-0.12.4.js

odYsMqE2SBcDW57DIV/4dN8vMgKu3rhIZwBOW+1x3/2mnJnIYBIlIEa1Y17iUKVn

bokeh-api-0.12.4.min.js

XIXah+HxdIydPqniJK0FJ+tdJ9GCMLNyHEMY0RMPkDGPUaFdh3vUmesAwtTEIouP

bokeh-widgets-0.12.4.js

6bfCW3us3jswr6a6YpAx7uqV91hNpbwuLWoJTmWoCrQTd6/SCXKSwN0Yn8MoNRc8

bokeh-widgets-0.12.4.min.js

btewSwV/3jQKg4UjwnG/MaohlRGcDbhVsVzpdTeqVa8oXbfhpt9p6SpndTsPZ9FG

0.12.3

Bokeh版本 0.12.3 (2016年10月)是一个小型的增量更新,它添加了一些新的小特性并修复了几个bug。其中一些亮点包括:

  • BokehJS的尺寸缩小了近20%

  • 新的分类颜色映射器

  • 点击工具和工具提示为VBar和HBar工作

  • 更好的悬停工具支持一些图表

  • 从列中的数据自动生成图例

  • 许多小错误修复

Migration Guide

随着项目接近1.0版本,有必要进行一些更改,以使接口和功能达到可以长期维护的程度。我们尽量限制这种变化,并有一段时间的贬抑。

指定字体大小

将文本字体大小属性直接设置为字符串(例如。 font_size="13px" )已被取消。此用法将继续工作,无需任何进一步的弃用警告。(https://github.com/bokeh/bokeh/pull/5274)

output_server

这个 output_server 函数已弃用,将在不久的将来删除。使用 bokeh.client 功能,如 push_session 相反。(https://github.com/bokeh/bokeh/pull/5225)

字形方法和数据源

现在不推荐同时为glyph方法提供序列字面值和显式源。例如:

p.circle([1,2,3], y='foo', source=source)  # BAD

其中一种仅提供序列文字,例如:

p.circle([1,2,3], y=[4,5,6])

或将所有数据放入明确提供的源中,例如:

p.circle(x='foo, y='foo', source=source)

旧的用法将在一段时间内继续使用,并在将来的版本中导致错误。(https://github.com/bokeh/bokeh/pull/5187)

FuncTickFormatter

FuncTickFormatter 使用JavaScript或CoffeeScript的实例现在需要代码段(即函数体),而不是完整的函数定义。此外,这些格式化程序现在接受Bokeh模型作为参数,以便格式化程序函数代码可以随时使用这些模型。(https://github.com/bokeh/bokeh/pull/4659/files)

传说

几个图例属性具有重复性 legend_ 前缀。以下属性名称已更改:

旧属性名称

新属性名称

legend_margin

margin

legend_padding

padding

legend_spacing

spacing

旧的属性名将在一段时间内继续工作,并显示一个弃用警告。

另外, legends 图例的属性已重命名为 items ,并给出了一个新的类型。新类型现在接受 LegendItem models ,而不是元组列表。为了方便和兼容,仍然接受以前的格式,并且值会自动转换。这个 legends 属性还将在一段时间内继续工作,并显示一个弃用警告(https://github.com/bokeh/bokeh/pull/5229)

尺寸

为工具指定尺寸已更改。这个 'x''y' 用于别名 'width''height' 曾经 立即移除 . 另外,代替 List(Enum(Dimension) ,尺寸现在被指定为 Enum(Dimension) 具有有效值 "width""height""both" . 以前的格式将继续工作一段时间,并自动转换为不推荐使用的警告。(https://github.com/bokeh/bokeh/pull/5225)

BokehJS注释

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.3

文件名

搞砸

bokeh-0.12.3.js

xAbgocDwINfLhCjiBBEtLVFGSwjS5k+UVrD3IoXwtNAetz8Bn7J9O8IwXnYMlcJq

bokeh-0.12.3.min.js

F8M7vgiiYbSwPDIT/9wmP1cQ7EbEMAXzvRBM4isFC5MenMujuQCAKap8vXmFio2Z

bokeh-api-0.12.3.js

qGUGEJePF4+ja/45zdDm47dgSFlcG2MiJBMdjQyhYSEAsDzbuzOnxxLSe5lI6OnG

bokeh-api-0.12.3.min.js

vIuherhIybbgv8avTaDzhjlYgLHptGFbX4PC7qLvY3dvfC4DxifeMYlvTJcHky7r

bokeh-widgets-0.12.3.js

nlRl8vNyTKHG5lg70Us1gwfihonkG+2lxvH+cd1jg1mZNQg6V9bOvSLqxVOLuAYD

bokeh-widgets-0.12.3.min.js

rgdXBhlvbLChj3kMcss1BMzIDZ8MxUjSNmqey0r3t7QMpDF8wezf4OZJGB9WDc7w

0.12.2

Bokeh版本0.12.2(2016年9月)是一个氨基更新,增加了一些“占地面积小,但影响大”的功能和几个错误修复,包括:

  • 客户端对所有字形的颜色映射支持

  • 新建颜色条批注

  • 支持在自定义模型中加载外部资源-查看新的LaTeX示例: LaTeX

  • 多行字形的命中测试支持

  • 改进了悬停工具提示默认样式

  • 添加酿酒师的定性调色板

  • 修复Jupyter笔记本电脑中BokehJS加载的间歇性问题

  • 将Bokeh JS API拆分为一个独立的包

  • 许多小错误修复

Migration Guide

Jupyter笔记本输出更改

作为更改的一部分,为了确保BokehJS客户端库在尝试在笔记本中呈现绘图之前已加载,一个新的 notebook_handle 参数已添加到 bokeh.io.show 方法。设置为时 True (与 output_notebook 启用),则 show 方法将返回可与一起使用的句柄 push_notebook .

对于依赖笔记本句柄以超出渲染顺序更新绘图的用户,必须添加 notebook_handle=True 对你 show 调用如下:

from bokeh.plotting import figure
from bokeh.io import output_notebook, push_notebook, show
output_notebook()
plot = figure()
plot.circle([1,2,3], [4,6,5])
handle = show(plot, notebook_handle=True)
# Update the plot title in the earlier cell
plot.title = "New Title"
push_notebook(handle=handle)

BokehJS API更改

为了缩小BokehJS主库的大小并减少页面加载时间,Bokeh JS API被分离成它自己的Bokeh API(.min).JS包。对于需要jsapi的用户,需要将新资源添加到他们的HTML模板中。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.2

文件名

搞砸

bokeh-0.12.2.js

bjRS9ikTgnbObZUH7BkbriTJ/74U8xH8QQssOorHxLvC3NwMZ0oG+Kv6T4lL9UzW

bokeh-0.12.2.min.js

XKxpX87dVNusxC2TgkLdEGO+MF0jvy42fJHqAUi+C/OvBkYQqOzixClIlc5cTW2I

bokeh-api-0.12.2.js

NSZ1y/Uqwy4XnnrjNupcZXiMQgR0yroKbAtk1Sbl0wQHhDIWFfJi7vnoIGD3BnMQ

bokeh-api-0.12.2.min.js

OyMtO71UD6gNx/GjmhaI3EzAxPgM4clEC7r7gdNSIOyK8FUjFGFyS8+tKfQBMdEe

bokeh-compiler-0.12.2.js

L7wwaXTUucLZgIwqFqAOLxGt02wsqJtzyXWU0Ki9+Go0TsfWc52v3mDl9CF2Qbya

bokeh-compiler-0.12.2.min.js

W4yJkHi0OV2t0M3YvksLtBWBBvg7pReyV6joBSkA8DJYaDMaHkxy9x5pg1UBrb99

bokeh-widgets-0.12.2.js

CyHwcYQDFGamGNpTga4UaDTXWGzuB7lgqnbMcQe6lorNw8w1wj0Bx6yhvtjShQ4p

bokeh-widgets-0.12.2.min.js

AivheJ7QesXl1NERyn9EyrsRxk+uflY/pisdOudop6qusL/kLfkSVjMwckg/MLET

0.12.1

Bokeh版本 0.12.1 (2016年7月)是一个小型的增量更新,它添加了一些新的小特性并修复了几个bug。其中一些亮点包括:

  • 添加 .patch 方法到 ColumnDataSource 有效的部分更新。

  • 添加 .visible 属性设置为所有glyphs,以便于打开/关闭功能。

  • 添加定性啤酒颜色映射到 bokeh.palettes .

  • 添加新 VBarHBar 字形类型。

  • 更新BokehJS以使用rbush2.0.1以获得更高效的空间索引。

  • 恢复 ResizeTool 简单布局的功能。

  • 修复Windows对conda构建、docs构建和运行单元测试的支持。

  • 修复的HTML模板中的错误 autoload_server 导致布局不正确。

  • 修复工具栏CSS中的一个错误,导致它干扰命中测试和选择。

  • 修复WebGL对Safari的支持,以及影响行粗细的WebGL错误。

  • 修正在Jupyter笔记本电脑中加载BokehJS的间歇性问题。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.1

文件名

搞砸

bokeh-0.12.1.js

TF38vhvAkQQ6pli7t8PSc/JSC5Tk8QP3G1wR7UwAykhDEEnCw5yC8UdZtpnRIcLn

bokeh-0.12.1.min.js

YwgXDPAsNadFWcDjteDXrLJS3nE5K/HSIJuwIyyildk4jlVEKAUhoWnWee+l6BXc

bokeh-compiler-0.12.1.js

TvYJmdxO2ECVmLPgGB0GhaqRj+UeKOhm2rm+r3/QGtLR5NqdSik7g63IOlbLTVkL

bokeh-compiler-0.12.1.min.js

rlEqeQLvenpWokAiTFbMgy6zgp9GbVvWadPocZYiAw8o6Q2UvvwJfK5TeknV+rqa

bokeh-widgets-0.12.1.js

Xdd0OqYYMKwQD5wVIYyhg0zfS/rdU2qAQnQ1PdD7hZ1fI+THorsp2DGzM2eHxzsn

bokeh-widgets-0.12.1.min.js

4xF0n6KT2Cv0QClwGCeK4rWLI0z+LOlTPV5+sbpUTWjoNOIoyjDzorV+GNxb8eKV

0.12.0

Bokeh版本 0.12.0 (2016年6月)是一个大型版本,有许多新的改进:

  • 响应式布局和风格改进贯穿始终

  • 用于纯JS开发的BokehJS绘图和图表api

  • 图例可以放置在中央绘图区之外/旁边

  • 扩展了对所有标记的WebGL支持,修复了WebGL错误

  • 新调色板:绿柱石、岩浆、地狱和等离子

  • 新型号:

    • 箭头、标题和标签注释

    • 用于缩放颜色映射的LogColorMapper

    • FuncTickFormatter用于更简单的自定义勾选

  • 支持数据列上的计算转换(例如抖动)

  • 文件改进:

    • 为布局重新完成用户gude部分

    • JS API的新用户指南部分

    • 自定义扩展的新用户指南部分

  • 服务器功能:

    • 用于线程的未锁定回调

    • “--num threads”选项可简化部署

    • 新索引登录页列出已安装的AP

  • 用户体验改进

    • 默认情况下,工具栏移到右侧并变为粘滞

    • 默认情况下,左对齐标题,靠近

    • 较小的斜体轴标签

  • 新的托管演示https://demo.bokeh.org

  • 许多小错误修复

Migration Guide

已知问题

目前最可靠的布局调整模式是“固定”和“缩放宽度”。其他模式可能起作用,或产生不希望的效果。布局工作仍在进行中。对“混合”大小调整模式的支持将在将来的版本中提供。此外 ResizeTool 不能可靠地与响应布局一起工作,并且很可能在将来的版本中被弃用。

谷歌地图

谷歌对谷歌地图的使用条款进行了修改,并且“立即生效”,所有谷歌地图API调用都必须有一个API密钥,否则它们将无法工作:

所有的博克 GMapPlot 模特必须有 api_key 属性集,否则它们将无法正常工作。请注意:所有以前创建的GMap图 any 先前版本的Bokeh受此TOS更改的影响。

实例

所有WebGL示例都被移到了下面 examples/webgl . 这个 timeout.pyrandom_tiles 应用程序示例已被删除,取而代之的是新的、更好的示例。下面是一些新布局功能的示例 examples/howto/layout .

博克赫斯

在BokehJS上声明属性的机制已经改变,添加了 @define@override@internal 方法。这可能会影响现有的自定义extension。到目前为止,BokehJS的细节被认为是内部实现细节。今后,我们将更加关注BokehJS的稳定性。

反对意见和兼容性

新的布局工作是一项大工程。因此,有很多人反对,包括 hplotvplot 等。几乎所有旧函数都将继续运行,同时发出弃用警告。但是,应该优先使用更新的函数。关于未来布局的最新指南是:

在大多数情况下,暂时可以使用一种不推荐的方式向前推进,但是有两个小的硬兼容性中断是无法避免的:

Plot.title

此属性现在是 Title 对象。不能再设置了,例如。 p.title = "some text" 作为字符串值。相反,您必须:

p。标题。文本=“一些u文本”

仍然有可能通过 title 关键字参数字符串值 ``figure` 为了方便起见。其他所有与所有权相关的属性 Plot ,例如 title_text_color 现在继续工作,同时发出不推荐警告。

session.show

这个 ClientSession.show 方法现在必须显式传递要显示的内容。不能再打电话了,例如。 session.show() 没有参数。相反,您必须:

会话.显示(图)

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.12.0

文件名

搞砸

bokeh-0.12.0.js

Vu5E9yfoVB1jJvsvuYJ6uKcQp7LrAOdyBNHVfLhwRz8guQzh1R9nvV/cRQY06PB+

bokeh-0.12.0.min.js

TUlxCkX84enRdt9oDgI6t+4oBMmDTPjZzHIbm5DWotRPPUr+nf0juX0EBMVjm9Ue

bokeh-compiler-0.12.0.js

cyFoYkKckC5micd9t2k3R1Sok81kNKq6+VacrpE5ywcOHpBUr47tFv+Tm1/TIiPb

bokeh-compiler-0.12.0.min.js

wIznusC6qrH52eurUBzSErPX0Pm9451ZZV+O343SQsXhrQWtun+pvp0DTWX2vjoC

bokeh-widgets-0.12.0.js

CFNTDWSpwqY9kf+0VYDqNZoF1zRd8A6ojTcTomZfkjJawkXTU/qu4Lupmfr5vMOB

bokeh-widgets-0.12.0.min.js

KMfPQEmVHXTaKvVaoZK7RjgBYe5iOG97ayj4RDpWImz441XV2SvU/3uh7q26N11x

0.11.1

Bokeh版本 0.11.1 (2016年2月)专注于提供错误修复、小功能和文档改进。亮点包括:

  • SSL终止代理后Bokeh服务器的设置和文档

  • 错误修复:

    • 多选作品

    • 椭圆图例渲染正确

    • 打印标题方向设置工作

    • 环形雕文作用于IE/Edge

  • 特征:

    • 在OHLC演示中预览新的流媒体API

    • 撤消/重做工具添加,重置工具现在重置打印大小

    • “开普勒数据”和“开普勒数据”命令

    • 现在可以直接从Jupyter笔记本创建Bokeh应用程序

    • 标题和内容类型现在可以在AjaxDataSource上配置

此外,一些内部工作已经开始重构和清理BokehJS,以使类和文件结构与Bokeh python库更加一致。

Migration Guide

  • 范围更新回调现在将Range对象返回为cb_obj(而不是绘图)

  • 布局(HBox、VBox、VBoxForm)已从bokeh.models.widgets到bokeh.models.布局,但仍可以从博克模型

  • BlazeDataSource已被删除;它将由Blaze团队在将来进行维护。

  • 损坏的BokehJS API已被删除。我们正在积极寻找一个新的BokehJS API的拥护者/维护者。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.11.1

文件名

搞砸

bokeh-0.11.1.js

Tkufirnq15nJ2AzP9z/K0YRgbgpEHTqW4tWItEGhCAq1VqYqTyK1sS92WsWASJOK

bokeh-0.11.1.min.js

Pu3P9+MeUXl4BPyw+/mhQ1ZliMYr96w6+sZ8rr/JmaEdjYrK6y5zEnnBVDD7F2uT

bokeh-compiler-0.11.1.js

h/zuZsBTml9IKapUtC2xpBI8nWH6BwhhKdUbS3Esgk3T7OKCiRThTPUl7cvFdkB4

bokeh-compiler-0.11.1.min.js

Ee0VICkBk1Kb1UsJEyTiN0v+iTE4Inb+bhbQsc5bxv7w7b+w0BVgpA1EerFAh/ck

bokeh-widgets-0.11.1.js

pqJibUOwxvkiQbKV0uFuQ12O8KbZ13DJeSL+zAKA+Mp8L+zxASxfv4P42xm54sUH

bokeh-widgets-0.11.1.min.js

JErZpHQP3WM8/wZVkQaCIBuuz+6z0pZNjDCqBj5nTx69k6m6MAgswad+ptzKQ/Bv

0.11.0

Bokeh版本 0.11.0 (2016年1月)是一个有许多新改进的大型版本

  • 新的基于Tornado和websocket的Bokeh服务器

    • bokeh 用于创建应用程序的命令行工具

    • 扩展文档,包括部署指南

    • 视频演示和教程

    • 支持异步、周期、超时和模型事件回调

    • python客户端API

  • 允许任何人扩展Bokeh的用户定义模型

  • GeoJSON数据源和地图分幅渲染器

  • 渲染线的WebGL支持

  • Python->JS compilation for CustomJS callbacks(目前仅限于Py3)

  • 基于Jupyter comms的新通用push_notebook()

  • 图表更新

    • 所有旧图表已转换

    • 更多示例和扩展文档

  • 用户体验改进

    • 可配置和“自动”范围界限

    • 默认情况下禁用滚轮缩放滚动捕捉

    • 字形的悬停策略

    • 响应性改进

  • 已知问题

    • 环形雕文不能正确渲染IE和边缘

  • 许多小错误修复

Migration Guide

已知问题

Jupyter笔记本中带有output_Server的服务器输出当前无法正常工作,很快将在后续的0.11.1版本中修复。然而,新的笔记本通信可以在没有Bokeh服务器的情况下实现许多相同类型的交互和基于笔记本的应用程序。

图像glyph目前不能与Bokeh服务器一起使用,很快将在后续的0.11.1版本中修复。

贬抑

以前的烧瓶 bokeh-server 已完全移除并替换为新的 bokeh serve 基于Tornado和websocket协议。如果您需要使用 bokeh-server 你必须保持在博克版本 0.10.0 或者更低。

所有“旧式”图表 bokeh._legacy_charts 已经更新使用更一致和强大的 bokeh.charts 接口,以及 bokeh._legacy_charts 已删除。

默认情况下python未启用Bokeh弃用警告,现在已无条件启用并始终显示。

ColumnDataSource.push_notebook() 已经有人反对(但仍然有效)赞成更普遍的 bokeh.io.push_notebook() 基于Jupyter笔记本电脑的websocket通讯。

以下模块已被弃用(但仍在工作),新的对应模块如下表所述:

老位置

新位置

bokeh.browserlib

bokeh.util.browser

bokeh.properties

bokeh.core.properties

bokeh.mixins

bokeh.core.property_mixins

bokeh.plotting_helpers

bokeh.plotting.helpers

bokeh.templates

bokeh.core.templates

此外,已立即移动了一般用户不感兴趣的以下模块,而不会遭到抨击:

老位置

新位置

bokeh._json_encoder

bokeh.core.json_encoder

bokeh.compat

bokeh.core.compat

bokeh.enums

bokeh.core.enums

bokeh.query

bokeh.core.query

bokeh.state

bokeh.core.state

bokeh.validation

bokeh.core.validation

如果你一直在使用 file_html 人工传递 js_resourcescss_resources ,您的呼叫将不再有效。您仍然可以这样做,但是您将一个元组传递给 resources 争论。

之前:

html = file_html(layout, None, title=title, template=template, js_resources=js_resources, css_resources=css_resources)

0.11版:

html = file_html(layout, resources=(js_resources, css_resources), title=title, template=template)

注意你可以通过 None 代替任何一个 js_resourcescss_resources .

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.11.0

文件名

搞砸

bokeh-0.11.0.js

BCLKhG2LJGzZrHI5d9wNeSUY3BhBNW3u3Bchu2CYqmqHiNP0SDCbVmko+7fBtqz5

bokeh-0.11.0.min.js

7cHWaPO0YU3YviGjB5dqoSXT0jjWVhNESOJUiPmcqNfUxB8f9AWRn/jI8jxv9b9B

bokeh-compiler-0.11.0.js

h/zuZsBTml9IKapUtC2xpBI8nWH6BwhhKdUbS3Esgk3T7OKCiRThTPUl7cvFdkB4

bokeh-compiler-0.11.0.min.js

wQxa+naxo/5x721n/V9bRhPGRFibSJUpgcA9h4dlxiI1TcwP7E4gkktceM4KBQvY

bokeh-widgets-0.11.0.js

HFO2FtQqhuufUVPSzrYUMEvePjR1hxqS2lM7+ADERmtOkvcVUkTW0qaPo6XAZ+HM

bokeh-widgets-0.11.0.min.js

OrtF7vAHRNc+bOQtZJTGDFO/L/nbZOqe1VeelDBF+BBVO/0lDK0ZDFwLQdXNOElf

0.10.0

博克 0.10.0 (2015年9月)提供了一些新功能,如WebGL支持、新的重构且功能更强大的图表界面和响应图。在我们的文档、测试和构建机器以及示例中也修复了错误和增强功能。

  • 初始webgl支持(查看我们的新示例:maps city、iris blend、scatter 10K,聚类.py)

  • 支持聚合的新图表界面(请参阅我们的新条形图、箱线图、直方图和散点示例)

  • 响应图

  • 较低级别的jsresources和cssresources(允许更精细地使用资源)

  • 几个试验机械修理工

  • 建造一些机械配件

  • 更多与pytest相关的修复和增强

  • 更多文档修复和增强

  • 现在glyph方法返回glyph渲染器(而不是绘图)

  • Gmap积分持续变化

  • 为imageurl对象添加了alpha控件

  • 删除python33测试和包装

  • 已删除multiuserblazeserver

Migration Guide

这个版本引入了一种新的、经常被要求的图表界面样式,它以Pandas数据帧为中心。所有“旧式”图表 bokeh.charts 接口已移动到 bokeh._legacy_charts ,当所有图表都已更新时,它最终将被删除。要继续使用旧图表,请替换``博克图表``与 bokeh._legacy_charts ,例如:

from bokeh.charts import Area

变成

from bokeh._legacy_charts import Area

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.10.0

文件名

搞砸

bokeh-0.10.0.js

roqWuzxIb+9icxQDCZC9kqQ+UpNXcVUuygQqTqfoWoGd585muxXNqIYPVYQ1YGaj

bokeh-0.10.0.min.js

bZmM9B4HEi1+YxYgaV/+kkACMwPYJp6O4j69SbqO5xytxFRyRnBzsrwZ4LURsnyh

0.9.3

博克 0.9.3 (2015年8月)提供了一些可用性增强、更好的文档、新的示例、大量bug修复和改进的测试机制(使用pytest和基于selenium的测试)。

  • 支撑水平或垂直跨度

  • 提供的原始组件版本bokeh.embed.components公司

  • 如果滚轮工具未激活,防止Bokeh吃掉滚动事件

  • bokeh.模型.操作现在被称为bokeh.models.回调回调现在是CustomJS

  • 其他验证警告

  • 清理了吞食源映射

  • 修复我们的建筑机械

  • 参考指南的“清理模型”部分

  • 用pytest代替鼻子

  • 开始添加硒测试

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.9.3

文件名

搞砸

bokeh-0.9.3.js

XnmmxRn1r5D8I0Jma6Zsv+LFhTgGkN3bvg2qCyTbz/9VFAFYQmLV1w+d+nBKb+Fo

bokeh-0.9.3.min.js

MWZj9IcmF3kjXMB3c625YyGg1zi4AstdG1YbBMPcmOCvOAfzCLhiF9wzK97XvHKE

0.9.2

博克 0.9.2 (2015年7月)提供了几个错误修复。此外,MPL兼容性层也得到了更新。

  • 一些与nan相关的修复,包括绘制缓慢的图形

  • 删除了一些未使用的依赖项

  • 自动发布过程中的修复

  • 修正了补丁在选择时消失的问题

  • 对刻度线和网格线的更多控制

  • MPL兼容性更新

  • 更新了几个示例

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.9.2

文件名

搞砸

bokeh-0.9.2.js

OexLuYVuOvGkuzoCz7W33ojy7pdvttmoMVf0p5qy8gCIZfsYNQKw76DFH3FdR8XF

bokeh-0.9.2.min.js

ek9Fq+5oN4hQ3hDiprqdFVJQ6aE/8QEHZ3TzCM5qWRCpv8nEqXUb/kuogFWmDT/U

0.9.1

博克 0.9.1 (2015年7月)专注于扩展Bokeh的新回调系统,增加更多可以使用回调的地方,扩展和改进新的用户指南,公开更好的方法将Bokeh图和小部件嵌入到您自己的布局中,并提供验证错误和警告反馈以诊断问题。

  • 悬停、选择和范围更新的新回调选项

  • 用户指南中有关小部件和新回调的文档

  • 更灵活嵌入.components可以嵌入多个对象

  • 实现了一个验证框架来提供错误和警告

  • 30多个小错误修复

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.9.1

文件名

搞砸

bokeh-0.9.1.js

he0Wjre3gUAW9isOJSLQJ3Tegh7T03wktOnlM9+hbsY4U9RtKMSKTIy/u7OPgOXe

bokeh-0.9.1.min.js

KI76vrite4JyequGokgYmKf8VYfmZKQ2X4etUngx1kctDHC3DQjfFDHC8N4xwoUN

0.9.0

博克 0.9.9 (2015年5月)在静态图中提供了复杂的交互,使用了一个新的回调操作,完全重写了用户指南,big BokehJS重构切换到使用browserify。

  • 回调操作,静态绘图中的无服务器交互

  • 沿线悬停检查

  • 交互式工具的客户端LOD降采样

  • 重写完整的用户指南

  • 减少BokehJS模板并切换到使用browserify

  • 几个错误修复示例

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.9.0

文件名

搞砸

bokeh-0.9.0.js

lQ3pi4yDh59XrNdnZ39u0rF7F/m9pOX8G6V8pq/s/dxm3DDZMXeewNHUOpMZWK2T

bokeh-0.9.0.min.js

Xs5IpvkTupznAMbyk+r7S0UBRGxznpBEP8f6dbauA8GInH6Epfchmwj9HTFWO1Lw

0.8.2

博克 0.8.2 (2015年3月)是一个快速发布,主要关注一些重构、bug修复和改进文档。

  • 将隐式接口收集到单个博克.io模块

  • 修正了笔记本电脑的css问题

  • 更新笔记本以与IPython 3.0兼容

  • 使用simpleapp模块轻松生成bokeh小程序

  • 开发安装增强功能

  • 一个新的用户指南介绍和一些其他文档样式增强

  • 其他一些小例子错误修复

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.8.2

文件名

搞砸

bokeh-0.8.2.js

MgfXSfLE3qlEldO9lhHDch1n1t1FR0Gl/Xnzjt4GYpAWXJphE9jwGHJkkGZwbAPU

bokeh-0.8.2.min.js

hx0bQYsgEXSQIr/4Bm1VoqrVWv6NUPcXNvCtZClxdrijVYpSA5ejSY9vpSqwoNIv

0.8.1

博克 0.8.1 (2015年2月)专注于稳定性、缺陷修复和改进文档。

  • 固定悬停工具

  • 修复了抽象呈现实现和文档

  • 固定图表库和文档

  • 从旧的绘图API实现中删除了剩余部分

  • 一些其他的小文件修复

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.8.1

文件名

搞砸

bokeh-0.8.1.js

PoysNTe21L9RYuf9VTcSUu7mUq/PfF+OVNm+dDWyBTZGjAujKy3hA9YzCax5suXg

bokeh-0.8.1.min.js

RjPbDoAJBnvxqECnoXk+wTHMrah2wPmq6WIiu1nsaiskZxQTaNXUzM1ii6GuYgSv

0.8.0

博克 0.8.0 (2015年2月)包括许多主要的新功能:

  • 新的和更新的语言绑定:R、JavaScript、Julia、Scala和Lua现在可用

  • 更好的bokeh服务器体验:

    • 服务器应用程序和示例的live gallery!

    • 新的“发布”模式Bokeh绘图和应用程序

    • 实际部署的文档和建议

  • 更简单、更易于扩展的图表体系结构,带有新的地平线图

  • 显著的构建和文档改进:

    • 100%完整的参考指南

    • 为每个“dev”构建和RC部署了完整的文档和BokehJS版本

    • sphinx扩展方便内联绘图

  • 着色网格带、可配置的悬停工具以及分类图的平移/缩放

  • 改进的更健壮的交叉滤波器

  • AjaxDataSource,用于客户端在不使用Bokeh服务器的情况下传输数据

此外,许多错误修复和小功能,包括旧的和新的-超过100个问题-关闭了这个版本!此外,几位新的贡献者也在很大程度上帮助了他们。特别感谢莎拉·伯德、马修·德雷索、萨曼莎·休斯和尼克·罗斯。

Sub-Resource Integrity Hashes

Table of SRI Hashes for version 0.8.0

文件名

搞砸

bokeh-0.8.0.js

sbVBtMnlyuSkyNDLKWwhp2ElmY6IZPsHlWq34GllwteWbzTCBx5PmbLuPByFgEAn

bokeh-0.8.0.min.js

ZIjfRVQrX3bqAK3Ye8yjicjVMh16aS+NfmeGNoRUUkXuD1PQZItEuDpEWpAwf4GG

0.7.1

博克 0.7.1 (2015年1月)专注于稳定性、缺陷修复、改进文档和更好的示例。

  • 几波基图表bug修复和增强,例如可配置工具

  • 文档改进,特别是为博克模型

  • Mpl兼容性得到改善,现在返回plot对象

  • 很多编码修复,包括一些示例数据中的修复

  • 使用新的基于docker的集装箱基础设施,在TravisCI中更快地运行

  • 新的和改进的例子,如与Numba和Bokeh笔记本的交互式图像处理

0.7.0

博克 0.7.0 (2014年12月)专注于新功能和功能,特别是围绕用户界面和体验:

  • 没有Bokeh服务器的IPython小部件和动画

  • 用于移动设备上工具的触摸用户界面

  • 大幅度改进的链接数据表

  • 更多新的(和改进的)博克图表(高级图表界面)

  • python侧的颜色映射器

  • 改进的工具栏

  • 许多新工具:套索,多边形,和点选择,十字线检查员

Migration Guide

另外,请注意绘图.py已弃用,将在Bokeh 0.8中删除。简而言之,代码如下:

figure()
hold()
line()
circle()
show()

应替换为更明确的代码:

p = figure()
p.line()
p.circle()
show(p)

0.6.1

博克 0.6.1 2014年9月发布。

  • 工具栏增强功能

  • bokeh服务器修复

  • 改进的文档

  • 按钮控件

  • Python端的Google地图支持

  • JS端代码清理及实例

  • 新实例

0.6.0

博克 0.6.0 (2014年9月)是一个增量更新:

  • 大型数据集的抽象渲染方法:等容线、热图、hdalpha

  • 改进的、可配置的绘图工具栏

  • 完全支持bokeh服务器的Python3

  • 扩展版用户指南

  • 支持多轴

  • 绘图对象图查询界面

  • 中的新图表博克图表:时间序列和分类热图

  • 补丁字形的命中测试

0.5.2

博克 0.5.2 (2014年8月)是一个增量更新:

  • 新布局系统

  • 改进的自动化测试基础设施

  • AR测试、服务器端下采样修复和ISO轮廓

  • 新的“类似仪表板”的示例:examples/app/applet/stock_示例.py

0.5.1

博克 0.5.1 (2014年7月)是一个增量更新:

  • 默认情况下悬停激活

  • 箱线图输入博克图表

  • 当你忘记启动bokeh服务器的时候

  • 修复了一些包装错误

  • 修复了NBviewer渲染

  • 修正了一些Unicodeencodeerror

0.5.0

博克 0.5.0 (2014年7月)增加了以下功能:

  • 小部件

  • 初始AR积分

  • 博克图表(散点图、条形图、柱状图)

  • 改进的嵌入API

  • 短刻度、绘图框和对数轴

0.4.4

博克 0.4.4 (2014年4月)是一个小版本:

  • 改进的MPL接口、子批次、样式以及更多示例

  • TravisCI测试集成

  • 工具增强,约束平移/缩放,更多悬停图示符

  • 服务器远程数据和下采样示例

  • Bokeh“应用程序”概念的初步工作

0.4.2

博克 0.4.2 (2014年3月)是一个小版本:

  • 改进的MPL接口,PolyCollection plus示例

  • 包含练习和解决方案的广泛教程

  • %bokeh magic for IPython笔记本电脑

  • bokeh服务器的内存存储后端(无Redis可用)

0.4.1

博克 0.4.1 (2014年2月)是一个小版本:

  • 改进的MPL接口,LineCollection plus示例

  • Scala接口

  • 范畴轴和范畴

  • 悬停工具

  • 改进了平移/缩放工具交互

0.4.0

博克 0.4.4 (2014年2月)是一个增量版本,包含了几个重要的新工作:

  • Matplotlib支持的初步工作:将MPL图转换为Bokeh图

  • 工具改进:

    • “始终打开”平移工具和滚轮缩放工具

    • 框缩放工具

    • 视口重置工具

  • 增强的日期时间轴,具有更好的性能和更好的滴答声

  • 扩展测试,包括TravisCI集成和使用PhantomJS的静态图像输出

  • 从Python和RGBA现在提供颜色映射图

  • 支持Python3!

  • 极大地改进了glyphs文档,提供了内联示例和JSFiddle集成

0.3.0

博克 0.3.0 (2013年11月)是一个小版本:

  • 重构bokehjs以使用grunt构建咖啡

  • 合并bokeh和bokehjs存储库

  • 各种错误修复

  • 附加和改进的示例和文档

0.2.0

博克 0.2.0 (2013年10月)是一个小版本:

  • 博克。绘图用于模式化绘图的接口,它封装了低级接口

  • BokehJS的性能改进

  • 修复了HiDPI/Retina显示的渲染问题

  • 极大地改进了Python接口体系结构

  • 更多的例子,更完善的文档

0.1.0

博克 0.1.0 (2013年4月)是Bokeh项目的首次公开发布:

  • 基本的低级接口,包括用于BokehJS渲染原语、glyph和工具的包装器对象

  • 包装低级接口的ggplot样式接口的开头

  • 具有类似Matplotlib的界面的简单的线/散点/条形图/图像图

  • 静态HTML输出

  • 实时服务器输出

  • IPython笔记本电脑嵌入功能

  • 表控件

  • 平移、缩放、选择、调整大小工具

  • 抽象呈现的Python初始实现