Wednesday, November 11, 2015

Demystifying Bokeh

Bokeh has rocked my brains for well over a month now and finally I have achieved that mythical moment of Epiphany and have deeply realized that it's nothing too difficult once you get your your head around the structure of the entire Library.

Basically it's just Python and once you understand the basic structure even a newbie programmer like me can play around with Bokeh and create awesome visuals for the browsers and IPython ( Jupyter ) notebooks.

Apart from the importance of Reading-the-docs, the real complexity of the entire thing arises from the fact that it's an intertwined pearl which deeply complements the other PyData stack. 

It's nothing too difficult to grasp, nor is it something which requires extensive knowledge of the Web Technologies at the very core - it's just a bunch of interactive lines on the page. The beauty being that we don't have to deal much with the JavaScript technology explicitly 'cos Bokeh does it for us.

Other components like Pandas, NumPy and Matplotlib, even Seaborn tightly integrate with Bokeh and to really improve at Bokeh and Visualizations in general - the rest of the Team-mates can't be overlooked. 

A Great playing ground to develop visualization skills is, of course, Matplotlib. The same being true generating Numbers for these visualets is NumPy and to make this data in an organized way we need to understand Pandas as well.

The Epiphany Moment, I talked about earlier was the fact that we can make all the plots in Bokeh using the [ bokeh.models ] subset of the entire library rather than relying on the High-Level and less customizable [bokeh.charts] module. Seriously, there is so much blood,-sweat-and-tears behind this little realization. Only later was I able to really create some useful plots. Just in time 'cos my exams are right around the corner=)


P.S - I am gonna lay low, the exam cops are on patrol again;P

When I come back I promise that there would be tons of Great Content and more learning stories I have planned. This last month has been one of the best ones in terms of the sheer amount I have explored and understood about various fields, ranging from

JavaScript
Python
Julia
IPython
HTML5/CSS,
CoffeeScript/Less
LilyPond
Haskell, Euterpea ( Computer Music )
Emacs
LISP (Scheme/Racket)
Web Scraping
Atom

I'll soon write up a Bokeh getting-started-guide as soon as my exams get over, probably by the month end.

No comments:

Post a Comment