Live data from Hacker News

Bokeh – Interactive web visualization library in Python

bokeh.pydata.org

11–20 of 66 posts

Re: Bokeh – Interactive web visualization library in Python

#11
post #10
post #9

As a "database guy" who uses Python for most things not bash, is this an approach for viz apps that would eliminate (most) of the need to muck about in JavaScript? D3 and its children produce some awesome visualizations, but the bandwidth does not exist for me to begin developing apps in a language I don't have much experience in. If something like Bokeh allows me to live mostly in Python, it becomes even more intere…

That is exactly the point of bokeh. It allows you to write python code and get browser based plots. Currently we have a python interface, but we intend to build interfaces in other langauges. Look at the examples gallery, which include the code needed to generate the plots. http://bokeh.pydata.org/gallery.html A relatively simple plot (scroll down to see the code): http://bokeh.pydata.org/plot_gallery/correlation.htm…

This is really cool, but what about adding interactivity with the charts? My first thought when I saw the headline was that this python library just generates D3 code, but it seems to be generating some sort of a static SVG object.

Re: Bokeh – Interactive web visualization library in Python

#12
post #6

Are mouse hover interactions in the timeline (display value of selected point)? Don't see any references but otherwise this is a very interesting project.

[Another bokeh dev chiming in] Additional tools like crosshair, data and color inspectors, box zoom, more types of selections (point, lasso, etc), and measurement tools are all planned.

Re: Bokeh – Interactive web visualization library in Python

#13
post #10

Earlier quoted context omitted.

That is exactly the point of bokeh. It allows you to write python code and get browser based plots. Currently we have a python interface, but we intend to build interfaces in other langauges. Look at the examples gallery, which include the code needed to generate the plots. http://bokeh.pydata.org/gallery.html A relatively simple plot (scroll down to see the code): http://bokeh.pydata.org/plot_gallery/correlation.htm…

This is really cool, but what about adding interactivity with the charts? My first thought when I saw the headline was that this python library just generates D3 code, but it seems to be generating some sort of a static SVG object.

We're actually using canvas.

http://bokeh.pydata.org/plot_gallery/iris.html

That has a selection tool you can play around with.

Re: Bokeh – Interactive web visualization library in Python

#14
post #10

Earlier quoted context omitted.

That is exactly the point of bokeh. It allows you to write python code and get browser based plots. Currently we have a python interface, but we intend to build interfaces in other langauges. Look at the examples gallery, which include the code needed to generate the plots. http://bokeh.pydata.org/gallery.html A relatively simple plot (scroll down to see the code): http://bokeh.pydata.org/plot_gallery/correlation.htm…

This is really cool, but what about adding interactivity with the charts? My first thought when I saw the headline was that this python library just generates D3 code, but it seems to be generating some sort of a static SVG object.

There are already some tools available, pan and wheel zoom, plot resizing, selection (on some plot types). Many more tool types are planned.

As for the architecture, BokehJS is built entirely on top of HTML canvas. The python bokeh library sends data and plot specifications to the browser, which uses BokehJS to render the plot and handle interactive tools, etc.

Re: Bokeh – Interactive web visualization library in Python

#15
post #9

As a "database guy" who uses Python for most things not bash, is this an approach for viz apps that would eliminate (most) of the need to muck about in JavaScript? D3 and its children produce some awesome visualizations, but the bandwidth does not exist for me to begin developing apps in a language I don't have much experience in. If something like Bokeh allows me to live mostly in Python, it becomes even more intere…

To be more clear, there are two main parts of bokeh. First there is the js portion which uses canvas to create the plots. There is an object model that allows plots to be composed of multiple components (glyphs, data sources, axes, data ranges).

The python side produces json that represents the objects to be plotted. Python only writes a small amount of js to start the js running. For the most part python just produces json objects that the js side reads.

There could be alternate implementations of the python side that still use the same js rendering logic. You could even write a nicer higher-level js api that wraps the low-level component construction.

I talked about this at PyData NYC. Here is my notebook (which I am in the process of updating for bokeh 0.3) http://nbviewer.ipython.org/urls/raw.github.com/paddymul/bok...

Re: Bokeh – Interactive web visualization library in Python

#16
post #7

As a photographer, I gotta say I really love the name. :) For those who aren't photography nerds, "bokeh" is a Japanese word that means the out-of-focus areas in a photograph. Different lenses have different kinds of bokeh, and beautiful or ugly bokeh is an important dividing line between good and bad lenses.

As someone who likes photography and analytics, I disagree about the name.

As you say, bokeh is about out-of-focus blur. That's sort of the opposite impression you want to present in a tool that's intended to give you "clarity" via its visualizations.

Re: Bokeh – Interactive web visualization library in Python

#17
post #7

As a photographer, I gotta say I really love the name. :) For those who aren't photography nerds, "bokeh" is a Japanese word that means the out-of-focus areas in a photograph. Different lenses have different kinds of bokeh, and beautiful or ugly bokeh is an important dividing line between good and bad lenses.

As someone who likes photography and analytics, I disagree about the name. As you say, bokeh is about out-of-focus blur. That's sort of the opposite impression you want to present in a tool that's intended to give you "clarity" via its visualizations.

As someone who likes photography, I have to disagree about your reasoning. The clarity of your subject is as much about how much it is in focus as how much irrelevant things are out of focus. Portrait photos are often beautiful when the lens has good bokeh characteristics.

Re: Bokeh – Interactive web visualization library in Python

#18
post #10

Earlier quoted context omitted.

That is exactly the point of bokeh. It allows you to write python code and get browser based plots. Currently we have a python interface, but we intend to build interfaces in other langauges. Look at the examples gallery, which include the code needed to generate the plots. http://bokeh.pydata.org/gallery.html A relatively simple plot (scroll down to see the code): http://bokeh.pydata.org/plot_gallery/correlation.htm…

This is really cool, but what about adding interactivity with the charts? My first thought when I saw the headline was that this python library just generates D3 code, but it seems to be generating some sort of a static SVG object.

Here is a linked brushing example in the IPython notebook. http://nbviewer.ipython.org/urls/raw.github.com/ContinuumIO/...

Re: Bokeh – Interactive web visualization library in Python

#19
post #7

As a photographer, I gotta say I really love the name. :) For those who aren't photography nerds, "bokeh" is a Japanese word that means the out-of-focus areas in a photograph. Different lenses have different kinds of bokeh, and beautiful or ugly bokeh is an important dividing line between good and bad lenses.

I thought bokeh was the aesthetic quality of the out of focus area, not the area itself.

Re: Bokeh – Interactive web visualization library in Python

#20
post #7

As a photographer, I gotta say I really love the name. :) For those who aren't photography nerds, "bokeh" is a Japanese word that means the out-of-focus areas in a photograph. Different lenses have different kinds of bokeh, and beautiful or ugly bokeh is an important dividing line between good and bad lenses.

As someone who likes photography and analytics, I disagree about the name. As you say, bokeh is about out-of-focus blur. That's sort of the opposite impression you want to present in a tool that's intended to give you "clarity" via its visualizations.

Actual, bokeh is about the quality of the blur. Yes, blur can have quality. If you simply removed everything that was not in focus, you lose context and texture about the subject. If you use a pinhole camera and present everything in sharp focus, you lose the insight.

This is actually mentioned in the documentation: http://bokeh.pydata.org/#technical-vision

""" Photographers use the Japanese word “bokeh” to describe the blurring of the out-of-focus parts of an image. Its aesthetic quality can greatly enhance a photograph, and photographers artfully use focus to draw attention to subjects of interest. “Good bokeh” contributes visual interest to a photograph and places its subjects in context.

In this vein of focusing on high-impact subjects while always maintaining a relationship to the data background, the Bokeh project attempts to address fundamental challenges of large dataset visualization... """

Post reply on HN