Отдельные объекты Bokeh не могут быть сериализованы отдельно, в том числе с pickle
. Наименьшая значимая единица сериализации в Bokeh - Document
, которая является определенной коллекцией объектов Bokeh, которые, как гарантируют, будут полны относительно следующих ссылок. Тем не менее, я был бы удивлен, если pickle
работает с Document
(AFAIK, вы первый, кто спрашивает об этом с момента начала проекта, он никогда не был приоритетом или даже не изучал то, о чем я знаю). Вместо этого я бы предложил, если вы хотите сделать что-то подобное, использовать собственные функции сериализации JSON Bokeh, такие как json_item
:
# python code
p_serialized = json.dumps(json_item(p))
Это будет правильно сериализовать p
в контексте Document
он является частью. Затем вы можете передать это своим шаблонам страниц для отображения с помощью API-вставки Bokeh JS:
# javascript code
p = JSON.parse(p_serialized);
Bokeh.embed.embed_item(p, "mydiv")