{"action":"created","issue":{"url":"https://api.github.com/repos/sgrid/pysgrid/issues/76","labels_url":"https://api.github.com/repos/sgrid/pysgrid/issues/76/labels{/name}","comments_url":"https://api.github.com/repos/sgrid/pysgrid/issues/76/comments","events_url":"https://api.github.com/repos/sgrid/pysgrid/issues/76/events","html_url":"https://github.com/sgrid/pysgrid/issues/76","id":127989462,"number":76,"title":"Improve the sgrid variable API","user":{"login":"ocefpaf","id":950575,"avatar_url":"https://avatars.githubusercontent.com/u/950575?v=3","gravatar_id":"","url":"https://api.github.com/users/ocefpaf","html_url":"https://github.com/ocefpaf","followers_url":"https://api.github.com/users/ocefpaf/followers","following_url":"https://api.github.com/users/ocefpaf/following{/other_user}","gists_url":"https://api.github.com/users/ocefpaf/gists{/gist_id}","starred_url":"https://api.github.com/users/ocefpaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ocefpaf/subscriptions","organizations_url":"https://api.github.com/users/ocefpaf/orgs","repos_url":"https://api.github.com/users/ocefpaf/repos","events_url":"https://api.github.com/users/ocefpaf/events{/privacy}","received_events_url":"https://api.github.com/users/ocefpaf/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2016-01-21T18:28:02Z","updated_at":"2016-02-01T23:11:10Z","closed_at":null,"body":"@kwilcox mentioned in #72 \r\n\r\nsci-wms needs to know too much information about what an sgrid is:\r\n* https://github.com/sci-wms/sci-wms/blob/e3d3d20735d2c4530fbba8b206b632da121647a4/wms/models/datasets/sgrid.py#L216-L237\r\n* https://github.com/sci-wms/sci-wms/blob/e3d3d20735d2c4530fbba8b206b632da121647a4/wms/models/datasets/sgrid.py#L251-L278\r\n* https://github.com/sci-wms/sci-wms/blob/e3d3d20735d2c4530fbba8b206b632da121647a4/wms/models/datasets/sgrid.py#L298-L314\r\n\r\nAnything that closes the implementation gap between pysgrid and potential users. I'd love it if sci-wms never had:\r\n* Rotate angles\r\n* Recenter any variables on to another grid\r\n* Figure out padding when re-centering\r\n* Subset in space (I should be able to provide a bbox and get back another Sgrid object read to go)\r\n* Subset in time (I don't want to have to write the bisect code... pysgrid could do that for me).\r\n\r\nBasically, all data access should assume the user wants it back on the centers and pad/slice/rotate as needed. If a user wants the raw data they can just use `netCDF4`."},"comment":{"url":"https://api.github.com/repos/sgrid/pysgrid/issues/comments/178248357","html_url":"https://github.com/sgrid/pysgrid/issues/76#issuecomment-178248357","issue_url":"https://api.github.com/repos/sgrid/pysgrid/issues/76","id":178248357,"user":{"login":"jay-hennen","id":14843789,"avatar_url":"https://avatars.githubusercontent.com/u/14843789?v=3","gravatar_id":"","url":"https://api.github.com/users/jay-hennen","html_url":"https://github.com/jay-hennen","followers_url":"https://api.github.com/users/jay-hennen/followers","following_url":"https://api.github.com/users/jay-hennen/following{/other_user}","gists_url":"https://api.github.com/users/jay-hennen/gists{/gist_id}","starred_url":"https://api.github.com/users/jay-hennen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jay-hennen/subscriptions","organizations_url":"https://api.github.com/users/jay-hennen/orgs","repos_url":"https://api.github.com/users/jay-hennen/repos","events_url":"https://api.github.com/users/jay-hennen/events{/privacy}","received_events_url":"https://api.github.com/users/jay-hennen/received_events","type":"User","site_admin":false},"created_at":"2016-02-01T23:11:10Z","updated_at":"2016-02-01T23:11:10Z","body":"I would like to suggest that the grid coordinates NOT be lazy loaded, and stored as numpy arrays (either raw or wrapped in a SGridVariable. I don't think they're large enough or infrequently used enough to warrant the data transfer/memory usage saved by lazy loading.\r\n\r\nIf they still must be lazy loaded, then upon first use (data retrieval) they should be fully loaded for the rest of the life of the object. "}}