Вы можете использовать файл шаблона HTML в формате каталога Bokeh и включать любые локальные или удаленные ресурсы CSS или JS, например:
структура каталога (упрощенно):
myapp
|
+---main.py
+---static
+---css
+---styles.css
+---images
+---foo.png
+---js
+---main.js
+---templates
+---index.html
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<link rel="stylesheet" href="myapp/static/css/styles.css"/>
<style>
body { background: #111122; }
</style>
<meta charset="utf-8">
{{ bokeh_css }}
{{ bokeh_js }}
</head>
<body>
{{ plot_div|indent(8) }}
{{ plot_script|indent(8) }}
</body>
</html>
Затем вы можете инициализировать показ своей 3D-визуализации, например, используя jQuery, например:
$(document).ready(function() {
var is_ready = true
// call here functions from your JS file
});
Или вы можете добавить Button и определить обратный вызов JS.для этого и выполните свой JS там:
from bokeh.models import Button
code = ''' console.log(cb_obj) '''
button = Button()
button.on_click = CustomJS(code = code)