Example server app

Hi,

Just wanted to make the community aware of a Bokeh server app I’ve developed in case it’s of interest. It accesses scientific data from OPenDAP servers and visualises it with customised Bokeh plots. It’s on PyPI, package name bokodapviewer (python 3 only). There’s a demo video here, and the source is available (see home page on PyPI).

The customised plots are in a stand-alone library (package name bokcolmaps) in case they’re useful.

Any comments welcome.

Thanks,
Marcus.

Marus,

This is terrific! Do you mind if I share this on the BokehPlots twitter account?

Bryan

···

On Apr 24, 2017, at 09:16, Marcus Donnelly <[email protected]> wrote:

Hi,

Just wanted to make the community aware of a Bokeh server app I've developed in case it's of interest. It accesses scientific data from OPenDAP servers and visualises it with customised Bokeh plots. It's on PyPI, package name bokodapviewer (python 3 only). There's a demo video here, and the source is available (see home page on PyPI).

The customised plots are in a stand-alone library (package name bokcolmaps) in case they're useful.

Any comments welcome.

Thanks,
Marcus.

--
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/5878c833-db12-42b4-8f61-20f33818ac8b%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

Also just FYI, I noticed you working to click the end of the slider specifically, I expect because there is no built in way to throttle sliders in bokeh apps. That feature is on the list of things to add. However, in the mean time, there is a very serviceable workaround to accomplish slider throttling in apps with the help of a JS callback described here:

Also, if you are ever interested in distributing conda packages of the project on anaconda.org as well, please let me know I'd be happy to help you with that.

Thanks,

Bryan

···

On Apr 24, 2017, at 18:33, Bryan Van de ven <[email protected]> wrote:

Marus,

This is terrific! Do you mind if I share this on the BokehPlots twitter account?

Bryan

On Apr 24, 2017, at 09:16, Marcus Donnelly <[email protected]> wrote:

Hi,

Just wanted to make the community aware of a Bokeh server app I've developed in case it's of interest. It accesses scientific data from OPenDAP servers and visualises it with customised Bokeh plots. It's on PyPI, package name bokodapviewer (python 3 only). There's a demo video here, and the source is available (see home page on PyPI).

The customised plots are in a stand-alone library (package name bokcolmaps) in case they're useful.

Any comments welcome.

Thanks,
Marcus.

--
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/5878c833-db12-42b4-8f61-20f33818ac8b%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

Many thanks for the kind words Bryan!

I’m more than happy for it to be shared on the BokehPlots twitter account, thanks.

You’re quite right about the reason for clicking on the slider track - thanks for the slider throttling workaround link, I’ll take a look at that.

I would also be interested in distributing conda packages, please do let me know how to do that. If it’s easier to do that outside the forum, my email address is [email protected].

Thanks again,
Marcus.

Tweeted out, FYI:

  https://twitter.com/bokehplots/status/857004447872032768

I'll email separately about conda pkgs

Thanks,

Bryan

···

On Apr 25, 2017, at 01:50, Marcus Donnelly <[email protected]> wrote:

Many thanks for the kind words Bryan!

I'm more than happy for it to be shared on the BokehPlots twitter account, thanks.

You're quite right about the reason for clicking on the slider track - thanks for the slider throttling workaround link, I'll take a look at that.

I would also be interested in distributing conda packages, please do let me know how to do that. If it's easier to do that outside the forum, my email address is [email protected].

Thanks again,
Marcus.

--
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/4b5bad27-b138-438f-9770-c47dfa6bf2a3%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

Appreciate the tweet, thanks Bryan.

···

On Wednesday, April 26, 2017 at 12:02:13 AM UTC+1, Bryan Van de ven wrote:

Tweeted out, FYI:

    [https://twitter.com/bokehplots/status/857004447872032768](https://twitter.com/bokehplots/status/857004447872032768)

I’ll email separately about conda pkgs

Thanks,

Bryan

On Apr 25, 2017, at 01:50, Marcus Donnelly [email protected] wrote:

Many thanks for the kind words Bryan!

I’m more than happy for it to be shared on the BokehPlots twitter account, thanks.

You’re quite right about the reason for clicking on the slider track - thanks for the slider throttling workaround link, I’ll take a look at that.

I would also be interested in distributing conda packages, please do let me know how to do that. If it’s easier to do that outside the forum, my email address is [email protected].

Thanks again,

Marcus.


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/4b5bad27-b138-438f-9770-c47dfa6bf2a3%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi Marcus,

I found the youtube video tweeted out and I’m interested in the idea since I use a lot of model output over opendap. However, I can’t see any of the text on your screen in the video and I’m not familiar with the typical server setup in Bokeh to figure it out on my own. I’m hoping that despite this, I can try out your tool. Any chance you have a writeup of how to use it somewhere?

Thanks!

Kristen

···

On Wednesday, April 26, 2017 at 3:30:23 AM UTC-5, Marcus Donnelly wrote:

Appreciate the tweet, thanks Bryan.

On Wednesday, April 26, 2017 at 12:02:13 AM UTC+1, Bryan Van de ven wrote:

Tweeted out, FYI:

    [https://twitter.com/bokehplots/status/857004447872032768](https://twitter.com/bokehplots/status/857004447872032768)

I’ll email separately about conda pkgs

Thanks,

Bryan

On Apr 25, 2017, at 01:50, Marcus Donnelly [email protected] wrote:

Many thanks for the kind words Bryan!

I’m more than happy for it to be shared on the BokehPlots twitter account, thanks.

You’re quite right about the reason for clicking on the slider track - thanks for the slider throttling workaround link, I’ll take a look at that.

I would also be interested in distributing conda packages, please do let me know how to do that. If it’s easier to do that outside the forum, my email address is [email protected].

Thanks again,

Marcus.


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/4b5bad27-b138-438f-9770-c47dfa6bf2a3%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi Kristen,

Yes, for some reason the video is a bit out of focus for the first 20 seconds or so, must be something to do with the software I used to make it. You should be able to make out the contents of the command window after that.

Anyway, the installation steps are as follows (note I’ve omitted the optional virtualenv installation - see here if you want to use that after step 1):

  1. Ensure you’ve got Python 3 installed (including pip but this comes with recent versions of Python 3 so should be there already)
  2. At a command prompt enter pip install bokodapviewer. This will install the app and its dependencies.
  3. Navigate to the bokodapviewer directory, which is in your site-packages directory (the location of this will depend on your OS and environment setup).
  4. Start the app by entering bokeh serve --show App.py
    This should open your default browser with the app running.

Hope that helps. If you need any further help or info about the app feel free to email me directly at [email protected].

Regards,
Marcus.

Forgot to add: the App.py module docstring contains brief instructions on how to use the app. To see this just start python at the comment prompt and enter:
from bokodapviewer import App
help(App)

(or you can just view the App.py file at the command prompt or in a text editor).

Marcus.

Hi Bryan,

Just to let you know I found a particularly efficient way of updating the image with a slider: using the on_change callback on the Python side for updating the LinearColorMapper low and high attributes together with a CustomJS callback for updating the image values. Package bokcolmaps on PyPI updated accordingly. It is now really fast at interacting with images as large as ~1M points in each slice.

As mentioned before, happy to create conda packages, just let me know the details when you have a moment.

Best Regards,
Marcus.

···

On Tuesday, April 25, 2017 at 12:41:34 AM UTC+1, Bryan Van de ven wrote:

Also just FYI, I noticed you working to click the end of the slider specifically, I expect because there is no built in way to throttle sliders in bokeh apps. That feature is on the list of things to add. However, in the mean time, there is a very serviceable workaround to accomplish slider throttling in apps with the help of a JS callback described here:

http://stackoverflow.com/questions/38375961/throttling-in-bokeh-application/38379136#38379136

Also, if you are ever interested in distributing conda packages of the project on anaconda.org as well, please let me know I’d be happy to help you with that.

Thanks,

Bryan