{"action":"opened","issue":{"url":"https://api.github.com/repos/pysal/pysal/issues/552","labels_url":"https://api.github.com/repos/pysal/pysal/issues/552/labels{/name}","comments_url":"https://api.github.com/repos/pysal/pysal/issues/552/comments","events_url":"https://api.github.com/repos/pysal/pysal/issues/552/events","html_url":"https://github.com/pysal/pysal/issues/552","id":54413105,"number":552,"title":"Viz organization","user":{"login":"ljwolf","id":2250995,"avatar_url":"https://avatars.githubusercontent.com/u/2250995?v=3","gravatar_id":"","url":"https://api.github.com/users/ljwolf","html_url":"https://github.com/ljwolf","followers_url":"https://api.github.com/users/ljwolf/followers","following_url":"https://api.github.com/users/ljwolf/following{/other_user}","gists_url":"https://api.github.com/users/ljwolf/gists{/gist_id}","starred_url":"https://api.github.com/users/ljwolf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ljwolf/subscriptions","organizations_url":"https://api.github.com/users/ljwolf/orgs","repos_url":"https://api.github.com/users/ljwolf/repos","events_url":"https://api.github.com/users/ljwolf/events{/privacy}","received_events_url":"https://api.github.com/users/ljwolf/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/pysal/pysal/labels/question","name":"question","color":"cc317c"},{"url":"https://api.github.com/repos/pysal/pysal/labels/viz","name":"viz","color":"5319e7"}],"state":"open","locked":false,"assignee":{"login":"darribas","id":417363,"avatar_url":"https://avatars.githubusercontent.com/u/417363?v=3","gravatar_id":"","url":"https://api.github.com/users/darribas","html_url":"https://github.com/darribas","followers_url":"https://api.github.com/users/darribas/followers","following_url":"https://api.github.com/users/darribas/following{/other_user}","gists_url":"https://api.github.com/users/darribas/gists{/gist_id}","starred_url":"https://api.github.com/users/darribas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/darribas/subscriptions","organizations_url":"https://api.github.com/users/darribas/orgs","repos_url":"https://api.github.com/users/darribas/repos","events_url":"https://api.github.com/users/darribas/events{/privacy}","received_events_url":"https://api.github.com/users/darribas/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2015-01-15T05:07:15Z","updated_at":"2015-01-15T05:07:15Z","closed_at":null,"body":"Trying to figure out a way to organize `viz` stuff might get complicated. Going forward, if we plan on supporting multiple backends in `viz`, how should we organize code for the separate backends?\r\n\r\nThe first idea that came to me was to define a generic map object defined in `viz` that offers a way to specify what mapping package to use. I've [added](https://github.com/ljwolf/pysal/tree/master/pysal/contrib/viz) a set of helper functions and example notebook of how to map from PySAL using Folium, and we could aim to have the `viz` object target these two backends. \r\n\r\nAlternatively, we could specify them as different modules (like with `viz.mpl`, `viz.folium`, `viz.bokeh`) and let each handle its own territory. I think this'd probably complicate things for the user, but it would make it very simple to transparently add new visualization packages.\r\n\r\nAny thoughts?"}}