html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue
https://github.com/pydata/xarray/issues/4470#issuecomment-1163301046,https://api.github.com/repos/pydata/xarray/issues/4470,1163301046,IC_kwDOAMm_X85FVpC2,14808389,2022-06-22T15:58:34Z,2022-06-22T15:58:46Z,MEMBER,do you want to add this to the ecosystem page in the docs?,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,710357592
https://github.com/pydata/xarray/issues/4470#issuecomment-810683846,https://api.github.com/repos/pydata/xarray/issues/4470,810683846,MDEyOklzc3VlQ29tbWVudDgxMDY4Mzg0Ng==,1197350,2021-03-31T01:22:29Z,2021-03-31T01:22:29Z,MEMBER,"I just saw this very [cool tweet](https://twitter.com/billjameslittle/status/1377064778036822017) about ipyvista / iris integration and it reminded me of this thread. 

Are there any clear steps we can take to help advance the vtk / pyvista / xarray integration further?","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,710357592
https://github.com/pydata/xarray/issues/4470#issuecomment-719464990,https://api.github.com/repos/pydata/xarray/issues/4470,719464990,MDEyOklzc3VlQ29tbWVudDcxOTQ2NDk5MA==,4160723,2020-10-30T10:13:35Z,2020-10-30T10:13:35Z,MEMBER,"> if downstream packages or accessor implementers know how to do something useful with these extra coordinates, they are free to do so! The data are there...xarray just doesn't currently make much use of them.

FWIW, we are working on the https://github.com/ESM-VFC/xoak package to easily index and select unstructured data in xarray datasets. This [works well](https://nbviewer.jupyter.org/github/ESM-VFC/xoak/blob/master/examples/basic_examples.ipynb) with multi-dimensional coordinates and xarray's advanced indexing features. Support for custom indexes and chunked (dask) coordinates is coming up too!","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,710357592
https://github.com/pydata/xarray/issues/4470#issuecomment-700670814,https://api.github.com/repos/pydata/xarray/issues/4470,700670814,MDEyOklzc3VlQ29tbWVudDcwMDY3MDgxNA==,1197350,2020-09-29T12:31:42Z,2020-09-29T20:06:51Z,MEMBER,"You can see an example of using xarray with structured curvilinear coordinates here:
- http://xarray.pydata.org/en/stable/examples/multidimensional-coords.html
- http://xarray.pydata.org/en/stable/examples/ROMS_ocean_model.html

And with unstructured data here:
- http://gallery.pangeo.io/repos/rsignell-usgs/esip-gallery/02_National_Water_Model.html
- http://gallery.pangeo.io/repos/rsignell-usgs/esip-gallery/01_hurricane_ike_water_levels.html

The key concept is that xarray supports both *dimensions coordinates* and *non-dimension coordinates*. The dimension coordinates must be 1D, but the non-dimension coordinates can have any dimensionality. For a regular lat-lon grid, a variable might have dimensions like this
```
temp(time, depth, lat, lon)
```
A structured curvilinear 2D grid might instead look like
```
temp(time, depth, j, i)
```
with additional coordinate variables
```
lon(j, i)
lat(j, i)
```
which can be used for visualization (but not, currently, for indexing)
A fully unstructured mesh in 2D would instead look like
```
temp(time, depth, cell_id)
lon(cell_id)
lat(cell_id)
```

This is exactly what netCDF does to encode these data types. Anything that can go into a netCDF file can be represented in Xarray. You just don't get the full functionality in terms of label-based selection. That will hopefully change as we implement more flexible indexing (see https://github.com/pydata/xarray/projects/1).

Another limitation of xarray is that it has no explicit notion of ""cell bounds,"" other than recognizing these as coordinates (see #2844). Our [xgcm](http://xgcm.readthedocs.org/) package works around this limitation in some simple ways.","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,710357592
https://github.com/pydata/xarray/issues/4470#issuecomment-700671843,https://api.github.com/repos/pydata/xarray/issues/4470,700671843,MDEyOklzc3VlQ29tbWVudDcwMDY3MTg0Mw==,1197350,2020-09-29T12:33:46Z,2020-09-29T12:33:46Z,MEMBER,"A key point I forgot to make...if downstream packages or [accessor implementers](http://xarray.pydata.org/en/stable/internals.html#extending-xarray) know how to do something useful with these extra coordinates, they are free to do so! The data are there...xarray just doesn't currently make much use of them.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,710357592