{"action":"opened","issue":{"url":"https://api.github.com/repos/ioam/holoviews/issues/246","labels_url":"https://api.github.com/repos/ioam/holoviews/issues/246/labels{/name}","comments_url":"https://api.github.com/repos/ioam/holoviews/issues/246/comments","events_url":"https://api.github.com/repos/ioam/holoviews/issues/246/events","html_url":"https://github.com/ioam/holoviews/issues/246","id":102867909,"number":246,"title":"Bokeh backend should support updating via the set method","user":{"login":"jlstevens","id":890576,"avatar_url":"https://avatars.githubusercontent.com/u/890576?v=3","gravatar_id":"","url":"https://api.github.com/users/jlstevens","html_url":"https://github.com/jlstevens","followers_url":"https://api.github.com/users/jlstevens/followers","following_url":"https://api.github.com/users/jlstevens/following{/other_user}","gists_url":"https://api.github.com/users/jlstevens/gists{/gist_id}","starred_url":"https://api.github.com/users/jlstevens/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlstevens/subscriptions","organizations_url":"https://api.github.com/users/jlstevens/orgs","repos_url":"https://api.github.com/users/jlstevens/repos","events_url":"https://api.github.com/users/jlstevens/events{/privacy}","received_events_url":"https://api.github.com/users/jlstevens/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ioam/holoviews/labels/bokeh","name":"bokeh","color":"006b75"},{"url":"https://api.github.com/repos/ioam/holoviews/labels/feature","name":"feature","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-08-24T19:02:42Z","updated_at":"2015-08-24T19:02:42Z","closed_at":null,"body":"After discussing the implementation of the Bokeh backend with Philipp, we came to the following agreement on how things should be implemented:\r\n\r\n* All options that can be dynamically updated should be updated via the ``set`` method offered by Bokeh in the ``_update_plot`` method.\r\n* Only options that can be initialized once and cannot be mutated should be supplied to the ``_init_plot`` method.\r\n\r\nThis should help make the Bokeh backend more dynamic than the matplotlib one. For instance,  modifying attributes such as font sizes across the elements of a HoloMap should update appropriately. If done properly, this could help eliminate the use of ``**self.style`` in the ``init_glyph`` method that is used to implement specific Bokeh plots.\r\n\r\nOn a related note, it should be possible to use the ``set`` mechanism to simplify the implementation of ``ElementPlot._update_plot``."}}