Error While rendering and building Interactive GUI tool

When I try to run the examples in the bokeh/plotting/server folder I get the below error:

GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed

Also I am in need to build an interactive - A GUI tool where a user can input some parameter and submits the same to back-end. The back-end would generate some charts to be rendered at UI.

Please let me know if bokeh has some functionality like same.

When I try to run the examples in the bokeh/plotting/server folder I get the below error:

    GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed

Bokeh uses the python standard library "webbrowser" module to raise brasier tabs to display saved Bokeh plots as a convenience. There appears to be some non-Bokeh-related configuration issue on some platforms that causes that error to be displayed, and to prevent browsers from being raised, when webbrowser.open() is called. However, in all cases I have seen, the plot is still correctly saved (either to static HTML file, or to the server). You can still open the HTML file, or see (or embed) the file on the Bokeh server. Since we have no control over the upstream webbrowser module or platform configurations that may interact with it, I am not sure what else can be done, except to note this as a potentially annoying, but otherwise harmless nuisance.

Also I am in need to build an interactive - A GUI tool where a user can input some parameter and submits the same to back-end. The back-end would generate some charts to be rendered at UI.

Please let me know if bokeh has some functionality like same.

Bokeh absolutely has this sort of capability, either by embedding just plot in your own larger web-app, or by using Bokeh's own widget objects. You can see hosted examples here (look under "Server Examples"):

  http://bokeh.pydata.org/en/latest/docs/gallery.html

And code examples here:

  https://github.com/bokeh/bokeh/tree/master/examples/app

Please refer to the README files in those directories.

Thanks,

Bryan

···

On Mar 23, 2015, at 7:03 AM, [email protected] wrote:

Thanks for the information - is it possible that we can have text boxes, dropdown list boxes - HTML GUI items along with Bokeh’s graph in a single page. Can we combine power of Jquery / JS / Bokeh + Python to generate one single web page.

Something like an interactive web page - the back end should be able to handle UI events like button click etc while also capturing user input generating graphs like matplotlib does in a specific location of the web page.

Is there any such dynamic web page demo / tutorial / example or information available?

Is Bokeh a licensed product - do I need to purchase the software - what happens if I plan to sell a product made from Bokeh tool.

···

On Monday, March 23, 2015 at 5:50:13 PM UTC+5:30, Bryan Van de ven wrote:

On Mar 23, 2015, at 7:03 AM, [email protected] wrote:

When I try to run the examples in the bokeh/plotting/server folder I get the below error:

GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed

Bokeh uses the python standard library “webbrowser” module to raise brasier tabs to display saved Bokeh plots as a convenience. There appears to be some non-Bokeh-related configuration issue on some platforms that causes that error to be displayed, and to prevent browsers from being raised, when webbrowser.open() is called. However, in all cases I have seen, the plot is still correctly saved (either to static HTML file, or to the server). You can still open the HTML file, or see (or embed) the file on the Bokeh server. Since we have no control over the upstream webbrowser module or platform configurations that may interact with it, I am not sure what else can be done, except to note this as a potentially annoying, but otherwise harmless nuisance.

Also I am in need to build an interactive - A GUI tool where a user can input some parameter and submits the same to back-end. The back-end would generate some charts to be rendered at UI.

Please let me know if bokeh has some functionality like same.

Bokeh absolutely has this sort of capability, either by embedding just plot in your own larger web-app, or by using Bokeh’s own widget objects. You can see hosted examples here (look under “Server Examples”):

    [http://bokeh.pydata.org/en/latest/docs/gallery.html](http://bokeh.pydata.org/en/latest/docs/gallery.html)

And code examples here:

    [https://github.com/bokeh/bokeh/tree/master/examples/app](https://github.com/bokeh/bokeh/tree/master/examples/app)

Please refer to the README files in those directories.

Thanks,

Bryan

Hi,

Bokeh (including the Bokeh server) is an open source project (BSD licensed). The complete source code is available on GitHub (https://github.com/bokeh/bokeh\) although it will be easier to install using "conda" or "pip".

It is definitely possible to embed Bokeh plots in many different ways, including into your own pages with your own jQuery or other widgets. Please see

  http://bokeh.pydata.org/en/latest/docs/user_guide/embedding.html

for more information about the different ways to embed Bokeh plots. You can also see some examples here:

  https://github.com/bokeh/bokeh/tree/master/examples/embed

Thanks,

Bryan

···

On Mar 23, 2015, at 11:14 PM, [email protected] wrote:

Thanks for the information - is it possible that we can have text boxes, dropdown list boxes - HTML GUI items along with Bokeh's graph in a single page. Can we combine power of Jquery / JS / Bokeh + Python to generate one single web page.

Something like an interactive web page - the back end should be able to handle UI events like button click etc while also capturing user input generating graphs like matplotlib does in a specific location of the web page.

Is there any such dynamic web page demo / tutorial / example or information available?

Is Bokeh a licensed product - do I need to purchase the software - what happens if I plan to sell a product made from Bokeh tool.

On Monday, March 23, 2015 at 5:50:13 PM UTC+5:30, Bryan Van de ven wrote:

> On Mar 23, 2015, at 7:03 AM, satyaprak...@gmail.com wrote:
>
> When I try to run the examples in the bokeh/plotting/server folder I get the below error:
>
> GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed

Bokeh uses the python standard library "webbrowser" module to raise brasier tabs to display saved Bokeh plots as a convenience. There appears to be some non-Bokeh-related configuration issue on some platforms that causes that error to be displayed, and to prevent browsers from being raised, when webbrowser.open() is called. However, in all cases I have seen, the plot is still correctly saved (either to static HTML file, or to the server). You can still open the HTML file, or see (or embed) the file on the Bokeh server. Since we have no control over the upstream webbrowser module or platform configurations that may interact with it, I am not sure what else can be done, except to note this as a potentially annoying, but otherwise harmless nuisance.

> Also I am in need to build an interactive - A GUI tool where a user can input some parameter and submits the same to back-end. The back-end would generate some charts to be rendered at UI.
>
> Please let me know if bokeh has some functionality like same.

Bokeh absolutely has this sort of capability, either by embedding just plot in your own larger web-app, or by using Bokeh's own widget objects. You can see hosted examples here (look under "Server Examples"):

        http://bokeh.pydata.org/en/latest/docs/gallery.html

And code examples here:

        https://github.com/bokeh/bokeh/tree/master/examples/app

Please refer to the README files in those directories.

Thanks,

Bryan

--
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/733e9049-600f-48cd-83d2-8bd6b0d50fe6%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

Thanks it indeed a valuable platform you have build but I felt a little complications using it:

  1. I have to run both bokeh-server and SimpleHTTPServer just to view a HTML page. Can it be rendered via Apache like any other web page?

  2. I understand that my web page would be dynamic. Say I have two input boxes which takes freq and time ranges. Now once the user enters the two value related graph should be generated - which I am not sure is straight forward using bokeh. I need to first submit the data to backend - then backend should generate a result HTML file, then I need to redirect the user to that result page - as such I have to move him away from original page. Also in such a case I need to always shut down and bring up SimpleHTTPServer over and over again.

3.Please let me know how I can render a plotting generated via matplotlib?

  1. Please note my case is to create a web app : render a web page users enters/selects values and on submission modified graph is rendered on the same page - kindly note that the graph can be generated from any tool via Python
···

On Tue, Mar 24, 2015 at 6:25 PM, Bryan Van de Ven [email protected] wrote:

Hi,

Bokeh (including the Bokeh server) is an open source project (BSD licensed). The complete source code is available on GitHub (https://github.com/bokeh/bokeh) although it will be easier to install using “conda” or “pip”.

It is definitely possible to embed Bokeh plots in many different ways, including into your own pages with your own jQuery or other widgets. Please see

    [http://bokeh.pydata.org/en/latest/docs/user_guide/embedding.html](http://bokeh.pydata.org/en/latest/docs/user_guide/embedding.html)

for more information about the different ways to embed Bokeh plots. You can also see some examples here:

    [https://github.com/bokeh/bokeh/tree/master/examples/embed](https://github.com/bokeh/bokeh/tree/master/examples/embed)

Thanks,

Bryan

On Mar 23, 2015, at 11:14 PM, [email protected] wrote:

Thanks for the information - is it possible that we can have text boxes, dropdown list boxes - HTML GUI items along with Bokeh’s graph in a single page. Can we combine power of Jquery / JS / Bokeh + Python to generate one single web page.

Something like an interactive web page - the back end should be able to handle UI events like button click etc while also capturing user input generating graphs like matplotlib does in a specific location of the web page.

Is there any such dynamic web page demo / tutorial / example or information available?

Is Bokeh a licensed product - do I need to purchase the software - what happens if I plan to sell a product made from Bokeh tool.

On Monday, March 23, 2015 at 5:50:13 PM UTC+5:30, Bryan Van de ven wrote:

On Mar 23, 2015, at 7:03 AM, [email protected] wrote:

When I try to run the examples in the bokeh/plotting/server folder I get the below error:

GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed

Bokeh uses the python standard library “webbrowser” module to raise brasier tabs to display saved Bokeh plots as a convenience. There appears to be some non-Bokeh-related configuration issue on some platforms that causes that error to be displayed, and to prevent browsers from being raised, when webbrowser.open() is called. However, in all cases I have seen, the plot is still correctly saved (either to static HTML file, or to the server). You can still open the HTML file, or see (or embed) the file on the Bokeh server. Since we have no control over the upstream webbrowser module or platform configurations that may interact with it, I am not sure what else can be done, except to note this as a potentially annoying, but otherwise harmless nuisance.

Also I am in need to build an interactive - A GUI tool where a user can input some parameter and submits the same to back-end. The back-end would generate some charts to be rendered at UI.

Please let me know if bokeh has some functionality like same.

Bokeh absolutely has this sort of capability, either by embedding just plot in your own larger web-app, or by using Bokeh’s own widget objects. You can see hosted examples here (look under “Server Examples”):

    [http://bokeh.pydata.org/en/latest/docs/gallery.html](http://bokeh.pydata.org/en/latest/docs/gallery.html)

And code examples here:

    [https://github.com/bokeh/bokeh/tree/master/examples/app](https://github.com/bokeh/bokeh/tree/master/examples/app)

Please refer to the README files in those directories.

Thanks,

Bryan

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/733e9049-600f-48cd-83d2-8bd6b0d50fe6%40continuum.io.

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

You received this message because you are subscribed to a topic in the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this topic, visit https://groups.google.com/a/continuum.io/d/topic/bokeh/b-3k6zkp9DU/unsubscribe.

To unsubscribe from this group and all its topics, 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/66E0C40E-F05B-4F89-88AF-06737DD872EE%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi Satya,

Thanks it indeed a valuable platform you have build but I felt a little complications using it:

  1. I have to run both bokeh-server and SimpleHTTPServer just to view a HTML page. Can it be rendered via Apache like any other web page?

Sure. You can serve the generated html page with whatever HTTP server you want. SimpleHTTPServer is just a Python built-in web server that is quite handy for us to point to in the examples as it’s always available with Python distributions but it’s just a web server like any other.

  1. I understand that my web page would be dynamic. Say I have two input boxes which takes freq and time ranges. Now once the user enters the two value related graph should be generated - which I am not sure is straight forward using bokeh. I need to first submit the data to backend - then backend should generate a result HTML file, then I need to redirect the user to that result page - as such I have to move him away from original page. Also in such a case I need to always shut down and bring up SimpleHTTPServer over and over again.

There are a few choices you can take for you needs but you need to take into account your own application constraints. You can embed the bokeh plots into your web app (html page) using the embedding pattern or host the app in a bokeh server app, have your own main web app that handles the logic of receiving the user input and generating the related plot on bokeh-server where you can then redirect the user… and many other.

One thing to notice is that (as mentioned earlier) SimpleHTTPServer is just a simple http server that you can choose to use to serve your html pages. Yo can pick your own… and you don’t need to restart it (or whatever other server you choose) after generating a new web page.

3.Please let me know how I can render a plotting generated via matplotlib?

You can do it directly without bokeh (integrating it on your web page) or use bokeh matplotlib compat module to generate your mpl plot from bokeh. You can see examples in the examples/compat/mpl folder. Please note that this feature uses mplexporter is somehow experimental.

  1. Please note my case is to create a web app : render a web page users enters/selects values and on submission modified graph is rendered on the same page - kindly note that the graph can be generated from any tool via Python

As mentioned before, you take different ways to achieve this. I recommend you to take a look at the docs and the examples (specially app and embed ones) to evaluate possible choices.

Thanks

Fabio

···

On Wednesday, March 25, 2015 at 7:22:28 AM UTC+1, Satya Prakash Prasad wrote:

You received this message because you are subscribed to a topic in the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this topic, visit https://groups.google.com/a/continuum.io/d/topic/bokeh/b-3k6zkp9DU/unsubscribe.

To unsubscribe from this group and all its topics, 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/66E0C40E-F05B-4F89-88AF-06737DD872EE%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Thanks a lot for the details as provided - it just that I have not yet implemented it end to end.

But then as I understand that first I need to install Apache and mod_python or related Apache module

Next I need to have bokeh-server always up and running

I would render an HTML page - which has buttons / input text area etc GUI HTML controls.
The user enters or selects values from the rendered web page.
I can make a AJAX call to call a .py file in back end.

Now
this is the area I am confused. How can I use embedding pattern technique on page that is already being rendered to a user in a browser.
Also please explain me what you meant by “host the app in a bokeh server app

Can
you please help me out in implementing a sample or a demo web page that
implements the concept I am talking about? Please note that I do not want to get redirected and also that there could be multiple users using the same web page inputting multiple different values.

Thanks in advance.

···

On Wed, Mar 25, 2015 at 3:07 PM, Fabio Pliger [email protected] wrote:

Hi Satya,

On Wednesday, March 25, 2015 at 7:22:28 AM UTC+1, Satya Prakash Prasad wrote:

Thanks it indeed a valuable platform you have build but I felt a little complications using it:

  1. I have to run both bokeh-server and SimpleHTTPServer just to view a HTML page. Can it be rendered via Apache like any other web page?

Sure. You can serve the generated html page with whatever HTTP server you want. SimpleHTTPServer is just a Python built-in web server that is quite handy for us to point to in the examples as it’s always available with Python distributions but it’s just a web server like any other.

  1. I understand that my web page would be dynamic. Say I have two input boxes which takes freq and time ranges. Now once the user enters the two value related graph should be generated - which I am not sure is straight forward using bokeh. I need to first submit the data to backend - then backend should generate a result HTML file, then I need to redirect the user to that result page - as such I have to move him away from original page. Also in such a case I need to always shut down and bring up SimpleHTTPServer over and over again.

There are a few choices you can take for you needs but you need to take into account your own application constraints. You can embed the bokeh plots into your web app (html page) using the embedding pattern or host the app in a bokeh server app, have your own main web app that handles the logic of receiving the user input and generating the related plot on bokeh-server where you can then redirect the user… and many other.

One thing to notice is that (as mentioned earlier) SimpleHTTPServer is just a simple http server that you can choose to use to serve your html pages. Yo can pick your own… and you don’t need to restart it (or whatever other server you choose) after generating a new web page.

3.Please let me know how I can render a plotting generated via matplotlib?

You can do it directly without bokeh (integrating it on your web page) or use bokeh matplotlib compat module to generate your mpl plot from bokeh. You can see examples in the examples/compat/mpl folder. Please note that this feature uses mplexporter is somehow experimental.

  1. Please note my case is to create a web app : render a web page users enters/selects values and on submission modified graph is rendered on the same page - kindly note that the graph can be generated from any tool via Python

As mentioned before, you take different ways to achieve this. I recommend you to take a look at the docs and the examples (specially app and embed ones) to evaluate possible choices.

Thanks

Fabio

You received this message because you are subscribed to a topic in the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this topic, visit https://groups.google.com/a/continuum.io/d/topic/bokeh/b-3k6zkp9DU/unsubscribe.

To unsubscribe from this group and all its topics, 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/66E0C40E-F05B-4F89-88AF-06737DD872EE%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Just one more concern - I am going to build a lot of scripts and have a menu option - say “Sin Wave” , “Cos Wave”, “BPSK”, “16 QAM” etc … any user web browsing can click any options and each options would have one or more charts to render.

Please let me know how to implement such a concept.

···

On Wed, Mar 25, 2015 at 5:10 PM, Satya Prakash Prasad [email protected] wrote:

Thanks a lot for the details as provided - it just that I have not yet implemented it end to end.

But then as I understand that first I need to install Apache and mod_python or related Apache module

Next I need to have bokeh-server always up and running

I would render an HTML page - which has buttons / input text area etc GUI HTML controls.
The user enters or selects values from the rendered web page.
I can make a AJAX call to call a .py file in back end.

Now
this is the area I am confused. How can I use embedding pattern technique on page that is already being rendered to a user in a browser.
Also please explain me what you meant by “host the app in a bokeh server app

Can
you please help me out in implementing a sample or a demo web page that
implements the concept I am talking about? Please note that I do not want to get redirected and also that there could be multiple users using the same web page inputting multiple different values.

Thanks in advance.

On Wed, Mar 25, 2015 at 3:07 PM, Fabio Pliger [email protected] wrote:

Hi Satya,

On Wednesday, March 25, 2015 at 7:22:28 AM UTC+1, Satya Prakash Prasad wrote:

Thanks it indeed a valuable platform you have build but I felt a little complications using it:

  1. I have to run both bokeh-server and SimpleHTTPServer just to view a HTML page. Can it be rendered via Apache like any other web page?

Sure. You can serve the generated html page with whatever HTTP server you want. SimpleHTTPServer is just a Python built-in web server that is quite handy for us to point to in the examples as it’s always available with Python distributions but it’s just a web server like any other.

  1. I understand that my web page would be dynamic. Say I have two input boxes which takes freq and time ranges. Now once the user enters the two value related graph should be generated - which I am not sure is straight forward using bokeh. I need to first submit the data to backend - then backend should generate a result HTML file, then I need to redirect the user to that result page - as such I have to move him away from original page. Also in such a case I need to always shut down and bring up SimpleHTTPServer over and over again.

There are a few choices you can take for you needs but you need to take into account your own application constraints. You can embed the bokeh plots into your web app (html page) using the embedding pattern or host the app in a bokeh server app, have your own main web app that handles the logic of receiving the user input and generating the related plot on bokeh-server where you can then redirect the user… and many other.

One thing to notice is that (as mentioned earlier) SimpleHTTPServer is just a simple http server that you can choose to use to serve your html pages. Yo can pick your own… and you don’t need to restart it (or whatever other server you choose) after generating a new web page.

3.Please let me know how I can render a plotting generated via matplotlib?

You can do it directly without bokeh (integrating it on your web page) or use bokeh matplotlib compat module to generate your mpl plot from bokeh. You can see examples in the examples/compat/mpl folder. Please note that this feature uses mplexporter is somehow experimental.

  1. Please note my case is to create a web app : render a web page users enters/selects values and on submission modified graph is rendered on the same page - kindly note that the graph can be generated from any tool via Python

As mentioned before, you take different ways to achieve this. I recommend you to take a look at the docs and the examples (specially app and embed ones) to evaluate possible choices.

Thanks

Fabio

You received this message because you are subscribed to a topic in the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this topic, visit https://groups.google.com/a/continuum.io/d/topic/bokeh/b-3k6zkp9DU/unsubscribe.

To unsubscribe from this group and all its topics, 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/66E0C40E-F05B-4F89-88AF-06737DD872EE%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

I have an idea to make use of Iframe window where the Iframe window would render the updated plots when params from the main HTML window are submitted - is there any other way achieve the same i.e. to make it more dynamic OR in case my method is wrong?

Please do provide your valuable opinion on same. I am planning to develop a web app for our Engg Institute - understand that we need not pay any fees and are rather free to create software using bokeh

···

On Wed, Mar 25, 2015 at 6:07 PM, Satya Prakash Prasad [email protected] wrote:

Just one more concern - I am going to build a lot of scripts and have a menu option - say “Sin Wave” , “Cos Wave”, “BPSK”, “16 QAM” etc … any user web browsing can click any options and each options would have one or more charts to render.

Please let me know how to implement such a concept.

On Wed, Mar 25, 2015 at 5:10 PM, Satya Prakash Prasad [email protected] wrote:

Thanks a lot for the details as provided - it just that I have not yet implemented it end to end.

But then as I understand that first I need to install Apache and mod_python or related Apache module

Next I need to have bokeh-server always up and running

I would render an HTML page - which has buttons / input text area etc GUI HTML controls.
The user enters or selects values from the rendered web page.
I can make a AJAX call to call a .py file in back end.

Now
this is the area I am confused. How can I use embedding pattern technique on page that is already being rendered to a user in a browser.
Also please explain me what you meant by “host the app in a bokeh server app

Can
you please help me out in implementing a sample or a demo web page that
implements the concept I am talking about? Please note that I do not want to get redirected and also that there could be multiple users using the same web page inputting multiple different values.

Thanks in advance.

On Wed, Mar 25, 2015 at 3:07 PM, Fabio Pliger [email protected] wrote:

Hi Satya,

On Wednesday, March 25, 2015 at 7:22:28 AM UTC+1, Satya Prakash Prasad wrote:

Thanks it indeed a valuable platform you have build but I felt a little complications using it:

  1. I have to run both bokeh-server and SimpleHTTPServer just to view a HTML page. Can it be rendered via Apache like any other web page?

Sure. You can serve the generated html page with whatever HTTP server you want. SimpleHTTPServer is just a Python built-in web server that is quite handy for us to point to in the examples as it’s always available with Python distributions but it’s just a web server like any other.

  1. I understand that my web page would be dynamic. Say I have two input boxes which takes freq and time ranges. Now once the user enters the two value related graph should be generated - which I am not sure is straight forward using bokeh. I need to first submit the data to backend - then backend should generate a result HTML file, then I need to redirect the user to that result page - as such I have to move him away from original page. Also in such a case I need to always shut down and bring up SimpleHTTPServer over and over again.

There are a few choices you can take for you needs but you need to take into account your own application constraints. You can embed the bokeh plots into your web app (html page) using the embedding pattern or host the app in a bokeh server app, have your own main web app that handles the logic of receiving the user input and generating the related plot on bokeh-server where you can then redirect the user… and many other.

One thing to notice is that (as mentioned earlier) SimpleHTTPServer is just a simple http server that you can choose to use to serve your html pages. Yo can pick your own… and you don’t need to restart it (or whatever other server you choose) after generating a new web page.

3.Please let me know how I can render a plotting generated via matplotlib?

You can do it directly without bokeh (integrating it on your web page) or use bokeh matplotlib compat module to generate your mpl plot from bokeh. You can see examples in the examples/compat/mpl folder. Please note that this feature uses mplexporter is somehow experimental.

  1. Please note my case is to create a web app : render a web page users enters/selects values and on submission modified graph is rendered on the same page - kindly note that the graph can be generated from any tool via Python

As mentioned before, you take different ways to achieve this. I recommend you to take a look at the docs and the examples (specially app and embed ones) to evaluate possible choices.

Thanks

Fabio

You received this message because you are subscribed to a topic in the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this topic, visit https://groups.google.com/a/continuum.io/d/topic/bokeh/b-3k6zkp9DU/unsubscribe.

To unsubscribe from this group and all its topics, 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/66E0C40E-F05B-4F89-88AF-06737DD872EE%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Also is it dependent on HTML5? Can it be rendered on all browsers.

···

On Fri, Mar 27, 2015 at 10:53 AM, Satya Prakash Prasad [email protected] wrote:

I have an idea to make use of Iframe window where the Iframe window would render the updated plots when params from the main HTML window are submitted - is there any other way achieve the same i.e. to make it more dynamic OR in case my method is wrong?

Please do provide your valuable opinion on same. I am planning to develop a web app for our Engg Institute - understand that we need not pay any fees and are rather free to create software using bokeh

On Wed, Mar 25, 2015 at 6:07 PM, Satya Prakash Prasad [email protected] wrote:

Just one more concern - I am going to build a lot of scripts and have a menu option - say “Sin Wave” , “Cos Wave”, “BPSK”, “16 QAM” etc … any user web browsing can click any options and each options would have one or more charts to render.

Please let me know how to implement such a concept.

On Wed, Mar 25, 2015 at 5:10 PM, Satya Prakash Prasad [email protected] wrote:

Thanks a lot for the details as provided - it just that I have not yet implemented it end to end.

But then as I understand that first I need to install Apache and mod_python or related Apache module

Next I need to have bokeh-server always up and running

I would render an HTML page - which has buttons / input text area etc GUI HTML controls.
The user enters or selects values from the rendered web page.
I can make a AJAX call to call a .py file in back end.

Now
this is the area I am confused. How can I use embedding pattern technique on page that is already being rendered to a user in a browser.
Also please explain me what you meant by “host the app in a bokeh server app

Can
you please help me out in implementing a sample or a demo web page that
implements the concept I am talking about? Please note that I do not want to get redirected and also that there could be multiple users using the same web page inputting multiple different values.

Thanks in advance.

On Wed, Mar 25, 2015 at 3:07 PM, Fabio Pliger [email protected] wrote:

Hi Satya,

On Wednesday, March 25, 2015 at 7:22:28 AM UTC+1, Satya Prakash Prasad wrote:

Thanks it indeed a valuable platform you have build but I felt a little complications using it:

  1. I have to run both bokeh-server and SimpleHTTPServer just to view a HTML page. Can it be rendered via Apache like any other web page?

Sure. You can serve the generated html page with whatever HTTP server you want. SimpleHTTPServer is just a Python built-in web server that is quite handy for us to point to in the examples as it’s always available with Python distributions but it’s just a web server like any other.

  1. I understand that my web page would be dynamic. Say I have two input boxes which takes freq and time ranges. Now once the user enters the two value related graph should be generated - which I am not sure is straight forward using bokeh. I need to first submit the data to backend - then backend should generate a result HTML file, then I need to redirect the user to that result page - as such I have to move him away from original page. Also in such a case I need to always shut down and bring up SimpleHTTPServer over and over again.

There are a few choices you can take for you needs but you need to take into account your own application constraints. You can embed the bokeh plots into your web app (html page) using the embedding pattern or host the app in a bokeh server app, have your own main web app that handles the logic of receiving the user input and generating the related plot on bokeh-server where you can then redirect the user… and many other.

One thing to notice is that (as mentioned earlier) SimpleHTTPServer is just a simple http server that you can choose to use to serve your html pages. Yo can pick your own… and you don’t need to restart it (or whatever other server you choose) after generating a new web page.

3.Please let me know how I can render a plotting generated via matplotlib?

You can do it directly without bokeh (integrating it on your web page) or use bokeh matplotlib compat module to generate your mpl plot from bokeh. You can see examples in the examples/compat/mpl folder. Please note that this feature uses mplexporter is somehow experimental.

  1. Please note my case is to create a web app : render a web page users enters/selects values and on submission modified graph is rendered on the same page - kindly note that the graph can be generated from any tool via Python

As mentioned before, you take different ways to achieve this. I recommend you to take a look at the docs and the examples (specially app and embed ones) to evaluate possible choices.

Thanks

Fabio

You received this message because you are subscribed to a topic in the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this topic, visit https://groups.google.com/a/continuum.io/d/topic/bokeh/b-3k6zkp9DU/unsubscribe.

To unsubscribe from this group and all its topics, 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/66E0C40E-F05B-4F89-88AF-06737DD872EE%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi Satya,

Also is it dependent on HTML5? Can it be rendered on all browsers.

Yes, it should work with most modern browsers. We do test all examples on recent (if not latest) versions of Chrome, Firefox, Safari and IE on every release. We don’t have tests for other browsers.

I have an idea to make use of Iframe window where the Iframe window would render the updated plots when params from the main HTML window are submitted - is there any other way achieve the same i.e. to make it more dynamic OR in case my method is wrong?

This can be a way to do it but from what you describe it seems to me that you can follow a similar path of one of the app examples we provide and use bokeh-server for your needs.

Please do provide your valuable opinion on same. I am planning to develop a web app for our Engg Institute - understand that we need not pay any fees and are rather free to create software using bokeh

Yes, as Bryan mentioned already Bokeh (including the Bokeh server) is an open source project (BSD licensed). The complete source code is available on GitHub (https://github.com/bokeh/bokeh).

Just one more concern - I am going to build a lot of scripts and have a menu option - say “Sin Wave” , “Cos Wave”, “BPSK”, “16 QAM” etc … any user web browsing can click any options and each options would have one or more charts to render.

Please let me know how to implement such a concept.

Have you seen the examples already? There a few examples that you can use as source of inspiration. That said, we are also working on creating more examples to expose more use cases.

Thanks a lot for the details as provided - it just that I have not yet implemented it end to end.

But then as I understand that first I need to install Apache and mod_python or related Apache module

Next I need to have bokeh-server always up and running

I would render an HTML page - which has buttons / input text area etc GUI HTML controls.
The user enters or selects values from the rendered web page.
I can make a AJAX call to call a .py file in back end.

It all really depends on how you want to structure your app. If you just want to create “new static pages” that hold a bokeh plot and serve it using Apache then you don’t need any wsgi layer and can just create the page and make Apache serve it. The static html pages generated by bokeh are self contained and you don’t need any other python server.

Please note that you if you have your web app that communicates via AJAX with a web service then the app examples seem the first place to start looking at.

Now
this is the area I am confused. How can I use embedding pattern technique on page that is already being rendered to a user in a browser.
Also please explain me what you meant by “host the app in a bokeh server app

This discussion on Stack Overflow may help. If you take a look at examples/app and examples/embed you should see the difference.

Fabio

···

On Friday, March 27, 2015 at 10:58:57 AM UTC+1, Satya Prakash Prasad wrote:

On Fri, Mar 27, 2015 at 10:53 AM, Satya Prakash Prasad [email protected] wrote:

On Wed, Mar 25, 2015 at 6:07 PM, Satya Prakash Prasad [email protected] wrote:

On Wed, Mar 25, 2015 at 5:10 PM, Satya Prakash Prasad [email protected] wrote: