Streaming Data to Multiple Documents Simultaneously

I am developing an application in Bokeh that displays data sent from an XBee device in real-time. The current version of the app has ~10 Panels that display different metrics being sent to the app. These panels have been nice to work with and are pretty fast because I just update the panel being actively looked at by the user. However, I would like to be able to abstract each of these panels to a similar objects that can each be viewed in real-time simultaneously. It’s my understanding that only one Panel object can be viewed at a single time (correct me if I’m wrong). I assume in order to do this I would need to create a Document object for every Panel object I have in my current version. But, I have tried reading through the Document() object documentation and related API’s/docs and it not quite sure how I can easily send a UI update to ~10 different documents at the same time and whether that’s even possible. Can someone please give me a high-level explanation as for how I might be able to do this?

Thanks,

-Ricky G

Anyone have any advice or thoughts here?

···

On Tuesday, April 19, 2016 at 10:57:31 PM UTC-7, Ricky Galliani wrote:

I am developing an application in Bokeh that displays data sent from an XBee device in real-time. The current version of the app has ~10 Panels that display different metrics being sent to the app. These panels have been nice to work with and are pretty fast because I just update the panel being actively looked at by the user. However, I would like to be able to abstract each of these panels to a similar objects that can each be viewed in real-time simultaneously. It’s my understanding that only one Panel object can be viewed at a single time (correct me if I’m wrong). I assume in order to do this I would need to create a Document object for every Panel object I have in my current version. But, I have tried reading through the Document() object documentation and related API’s/docs and it not quite sure how I can easily send a UI update to ~10 different documents at the same time and whether that’s even possible. Can someone please give me a high-level explanation as for how I might be able to do this?

Thanks,

-Ricky G

A few random thoughts:

* I do think it should be possible to create multiple Documents, but I don't think anyone has ever demonstrated doing this

* AFAIK there is only no restriction on Panel visibility, per se. If you happen to put panels in a Tabs then only one would be visible at a time, because that's how Tabs works.

* Another option is to run a separate app for each metric? It could possibly nbe the same code, configured differently for each. Then each metric is available at a different URL. Once this PR is merged:
  
  https://github.com/bokeh/bokeh/pull/4176

Then you could even collect all the different app URLs into a single page with a custom temlate.

Basically, I don't feel like I have a grasp on lots of your requirements (e.g., I can't tell from your description if you are trying to show several things simultaneously, or just update them even if they are only visible one at a time) so it's hard to offer concrete advice.

Bryan

···

On Apr 21, 2016, at 9:22 PM, Ricky Galliani <[email protected]> wrote:

Anyone have any advice or thoughts here?

On Tuesday, April 19, 2016 at 10:57:31 PM UTC-7, Ricky Galliani wrote:
I am developing an application in Bokeh that displays data sent from an XBee device in real-time. The current version of the app has ~10 Panels that display different metrics being sent to the app. These panels have been nice to work with and are pretty fast because I just update the panel being actively looked at by the user. However, I would like to be able to abstract each of these panels to a similar objects that can each be viewed in real-time simultaneously. It's my understanding that only one Panel object can be viewed at a single time (correct me if I'm wrong). I assume in order to do this I would need to create a Document object for every Panel object I have in my current version. But, I have tried reading through the Document() object documentation and related API's/docs and it not quite sure how I can easily send a UI update to ~10 different documents at the same time and whether that's even possible. Can someone please give me a high-level explanation as for how I might be able to do this?

Thanks,
-Ricky G

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/144d2662-7cef-469a-9773-e63bc06e0fb0%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.