Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »

buche-bokeh

0.0.2 • Public • Published

buche-bokeh

Buche plugin for the bokeh plotting library.

Provides the bokeh channel type.

Use

First you must output the following buche command:

{"command":"require","path":"/","pluginName":"bokeh"}

Buche will prompt you to install the plugin if it is not available, although you can install it manually with buche --install bokeh.

bokeh channel

The bokeh channel lets you define a figure and add plots and points to it in real time.

After you create the main BokehChannel for plotting, each plot is a sub-channel that you must open. For example:

{"command":"open","path":"/plot","type":"bokeh"}
{"command":"open","path":"/plot/myplot1","plotType":"line"}
{"command":"open","path":"/plot/myplot2","plotType":"x","legend":"My Plot"}
{"command":"open","path":"/plot/myplot3","plotType":"asterisk","size":10,"x":{"field":"time"},"y":{"field":"candies"}}
...

Information about the various plot types, and what parameters they can take: https://bokeh.pydata.org/en/latest/docs/reference/plotting.html

Note that for most parameters, if you want their value to depend on some field in the data, you can use: "<parameter>": {"field": "<some_field>"}. This is done by default for the x and y parameters of most plot types, mapping them to the field of the same name. This can be overriden, for example in the line to open /plot/myplot3 above.

Once these channels are created, add points using the data command:

{"command":"data","path":"/plot/myplot1","x":1,"y":2}
{"command":"data","path":"/plot/myplot2","x":3,"y":4}
{"command":"data","path":"/plot/myplot3","time":5,"candies":6}
...

Coupling with a table channel

A plot can specify an existing TableChannel as a source:

{"command":"open","path":"/data","type":"table","columns":{"x":{"type":"number"},"y":{"type":"number"}}, "hidden":true}
{"command":"open","path":"/plot","type":"bokeh"}
{"command":"open","path":"/plot/myplot1","plotType":"line","source":"/data"}
{"command":"data","path":"/data","x":1,"y":2}
...

Data sent to /data will be shown as points in /plot/myplot1. Multiple plots can use the same source and use arbitrary fields from that table as x and y coordinates. Set the hidden attribute on the data channel if you don't want the data table to actually be displayed.

Examples

See the examples/ sub-directory.

Install

npm i buche-bokeh

DownloadsWeekly Downloads

2

Version

0.0.2

License

MIT

Last publish

Collaborators

  • avatar