{"action":"created","issue":{"url":"https://api.github.com/repos/ioam/holoviews/issues/103","labels_url":"https://api.github.com/repos/ioam/holoviews/issues/103/labels{/name}","comments_url":"https://api.github.com/repos/ioam/holoviews/issues/103/comments","events_url":"https://api.github.com/repos/ioam/holoviews/issues/103/events","html_url":"https://github.com/ioam/holoviews/issues/103","id":79989624,"number":103,"title":"Collapsing an NdOverlay or HoloMap into a stream plot or error bars","user":{"login":"jbednar","id":1695496,"avatar_url":"https://avatars.githubusercontent.com/u/1695496?v=3","gravatar_id":"","url":"https://api.github.com/users/jbednar","html_url":"https://github.com/jbednar","followers_url":"https://api.github.com/users/jbednar/followers","following_url":"https://api.github.com/users/jbednar/following{/other_user}","gists_url":"https://api.github.com/users/jbednar/gists{/gist_id}","starred_url":"https://api.github.com/users/jbednar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jbednar/subscriptions","organizations_url":"https://api.github.com/users/jbednar/orgs","repos_url":"https://api.github.com/users/jbednar/repos","events_url":"https://api.github.com/users/jbednar/events{/privacy}","received_events_url":"https://api.github.com/users/jbednar/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ioam/holoviews/labels/feature","name":"feature","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-05-23T23:53:56Z","updated_at":"2015-05-24T09:33:44Z","closed_at":null,"body":"The recent addition of error bars is great, but they currently have to be constructed explicitly, which can be error prone (no pun intended).  Since we encourage people to collect stacks of data into containers like NdOverlays and HoloMaps, it would be great if we could very easily tell HoloViews to create a summary plot by collapsing those data structures along a certain dimension by calculating the mean (or median?) value along with error bars (or stream widths, once stream plots are supported).  This should be a nice way to move back and forth between the full data and reduced versions thereof, so that people can get a  nice intuition about how well the summary statistics represent the underlying data."},"comment":{"url":"https://api.github.com/repos/ioam/holoviews/issues/comments/104996637","html_url":"https://github.com/ioam/holoviews/issues/103#issuecomment-104996637","issue_url":"https://api.github.com/repos/ioam/holoviews/issues/103","id":104996637,"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},"created_at":"2015-05-24T09:33:44Z","updated_at":"2015-05-24T09:33:44Z","body":">  I'm arguing that it's dangerous to have some separate set of error bars divorced from the data, because it's very easy to get confused and have those values not actually correspond to the data. \r\n\r\nHaving a mixture of raw data and analysis in the same numpy array is a far worse idea. Typically, losing your raw data is worse than losing your analysis! The two things must be kept separate!\r\n\r\n> . Computing them automatically from a set of Curves (e.g.) was supposed to make this process much more foolproof\r\n\r\nI am in favour of an easier way to generate appropriate ``ErrorBars``. I am not in favour of trying to make HoloViews foolproof -  it is impossible to make any software foolproof! Instead, I want to make it easy for the user to do whatever they *intend* to do in a flexible, compositional way. If the user wants to do something stupid, they will!\r\n\r\nWhat matters is having clear, compositional semantics so the user can easily spot if they have made a mistake. I am convinced that ``NdOverlays`` and ``ErrorBars`` are naturally related which is why I think ``NdOverlay`` is the correct place to easily generate mean curves,  error bars etc.\r\n\r\nAnyway, I agree my example was wrong for the issue you stated but that illustrates why trying to be foolproof isn't going to work! You wanted to completely collapse the holomap but my example of overlaying error bars on a holomap is also a valid thing to do. For what you are suggesting, it should be something like this:\r\n\r\n```python\r\ncurves = NdOverlay(hmap).\r\ncurves.collapse(np.mean) * curves.errorbars()\r\n```"}}