Anaconda Enterprise: Documentation

# bokeh.application.handlers.function

Provide a Bokeh Application Handler to build up documents by running a specified Python function.

This Handler is not used by the Bokeh server command line tool, but is often useful if users wish to embed the Bokeh server programmatically:

    def make_doc(doc):

        # do work to modify the document, add plots, widgets, etc.

        return doc

    app = Application(FunctionHandler(make_doc))

    server = Server({'/bkapp': app}, io_loop=IOLoop.current())

    server.start()

For complete examples of this technique, see examples/howto/server_embed

class `bokeh.application.handlers.function.``FunctionHandler`(func)

  A Handler that accepts a plain python function to use for modifying Bokeh Documents.

  For example, the following code configures a handler with a function that adds an empty plot to a Document:

      def add_empty_plot(doc):
          p = figure(x_range=(0,10), y_range=(0, 10))
          doc.add_root(p)
          return doc

      handler = FunctionHandler(add_empty_plot)

  This handler could be configured on an Application, and the Application would run this function every time a new session is created.

  `modify_document`(doc)

    Execute the configured `func` to modify the document.

    After this method is first executed, `safe_to_fork` will return `False`.

  `safe_to_fork`

    Whether it is still safe for the Bokeh server to fork new workers.

    `False` if `modify_doc` has already been called.