-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature request: show units in dataset overview #2773
Comments
I would love to see this. What would we want the exact formatting to be? Square brackets to copy how units from
The lack of vertical alignment is kind of ugly... There are now two cases to discuss: units in
We could presumably just extract the units from pint's repr to display them separately. I don't know if that raises questions about generality of duck-typing arrays though @dcherian ? Is it fine to make units a special-case? |
it was argued in pint that the unit is part of the data, so we should keep it as close to the data as possible. How about
or
The issue with the second example is that it is easy to confuse with numpy's dtype, though. Maybe we should use parentheses instead? re special casing: I think would be fine for attributes since we already special case them for plotting, but I don't know about duck arrays. Even if we want to special case them, there are many unit libraries with different interfaces so we would either need to special case all of them or require a specific interface (or a function to retrieve the necessary data?). Also, we should keep in mind is that using more horizontal space for the units results in less space for data. And we should not forget about dask/dask#5329 (comment), where a different kind of format was proposed, at least for the values of a |
Instead of trying to come up with our own formatting, how about supporting a This won't help with displaying the |
#4248 pushes the formatting to duck arrays, so unit-aware arrays like Edit: reopened it until we have a decision about formatting the |
1133: Change HTML repr away from LaTeX to a Sparse/Dask-like repr r=hgrecco a=jthielen While I've never been a big fan of Pint's LaTeX repr in JupyterLab/Jupyter Notebook due to working with large arrays that would crash the renderer, I've recently been working a lot with various wrapping combinations of xarray, Pint, Dask, and Sparse, in which Pint's LaTeX repr performs particularly poorly. Even if Pint's repr were elided (#765), it would still poorly nest with the other HTML reprs. This motivated me to implement an alternative HTML repr for Pint using a simple HTML table similar to what both Dask and Sparse use. As shown in [this demonstration notebook](https://nbviewer.jupyter.org/urls/dl.dropbox.com/s/jlgqm6s92kzvagi/pint_html_repr_demo.ipynb), this allows much better nesting of HTML reprs. A quick example image is below: ![](https://www.meteor.iastate.edu/~jthielen/Screenshot%20from%202020-07-14%2017-07-51.png) This doesn't quite take care of [xarray's unit repr discussions](pydata/xarray#2773) (since this only shows up when expanding the data in a dataset), but I still think it is a worthwhile improvement for the expanded view. @keewis do you have any thoughts on this particular interaction? Marking as a WIP/draft for now to see if this is a welcome format for the HTML repr first before I dig too much into optimizing the implementation and writing tests for it. - [x] Closes #654 (even though it was already closed in favor of #765, I think the are related but separate issues) - [x] Executed ``black -t py36 . && isort -rc . && flake8`` with no errors - [x] The change is fully covered by automated unit tests - [x] Documented in docs/ as appropriate - [x] Added an entry to the CHANGES file Tagging @nbren12, @hgrecco, @jondoesntgit, @natezb, @ipcoder, @keewis, and @TomNicholas for input based on past issues (#654, #765, and xarray-contrib/pint-xarray#6). Co-authored-by: Jon Thielen <[email protected]>
it might be better to not special-case the |
Here's a hypothetical dataset:
It would be really nice if the units of the coordinates and of the data variables were shown in the
Dataset
repr, for example as:The text was updated successfully, but these errors were encountered: