issues
7 rows where comments = 9, repo = 13221727 and user = 35968931 sorted by updated_at descending
This data as json, CSV (advanced)
Suggested facets: draft, state_reason, created_at (date), updated_at (date), closed_at (date)
id | node_id | number | title | user | state | locked | assignee | milestone | comments | created_at | updated_at ▲ | closed_at | author_association | active_lock_reason | draft | pull_request | body | reactions | performed_via_github_app | state_reason | repo | type |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1945654275 | PR_kwDOAMm_X85c7HL_ | 8319 | Move parallelcompat and chunkmanagers to NamedArray | TomNicholas 35968931 | closed | 0 | 9 | 2023-10-16T16:34:26Z | 2024-02-12T22:09:24Z | 2024-02-12T22:09:24Z | MEMBER | 0 | pydata/xarray/pulls/8319 | @dcherian I got to this point before realizing that simply moving
I personally think that simply moving parallelcompat makes sense so long as you expect people to use chunked cc @andersy005
|
{ "url": "https://api.github.com/repos/pydata/xarray/issues/8319/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
xarray 13221727 | pull | |||||
2088695240 | I_kwDOAMm_X858fvXI | 8619 | Docs sidebar is squished | TomNicholas 35968931 | open | 0 | 9 | 2024-01-18T16:54:55Z | 2024-01-23T18:38:38Z | MEMBER | What happened?Since the v2024.01.0 release yesterday, there seems to be a rendering error in the website - the sidebar is squished up to the left: |
{ "url": "https://api.github.com/repos/pydata/xarray/issues/8619/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
reopened | xarray 13221727 | issue | |||||||
1084220684 | PR_kwDOAMm_X84wDPg5 | 6086 | Type protocol for internal variable mapping | TomNicholas 35968931 | closed | 0 | 9 | 2021-12-19T23:32:04Z | 2023-12-06T17:20:48Z | 2023-12-06T17:19:30Z | MEMBER | 1 | pydata/xarray/pulls/6086 | In #5961 and #6083 I've been experimenting extending I've been writing out new storage class implementations in those PRs, but on Friday @shoyer suggested that I could instead simply alter the allowed type for The idea is to define a protocol in xarray which specifies the structural subtyping behaviour of any custom variable storage class that I might want to set as In practice this means writing a protocol which describes the type behaviour of all the methods on So far I've written out a 1) The typing behaviour of overloaded methods, specifically
2) Making functions which expect a
3) I'm expecting to get a runtime problem whenever we Once that passes mypy I will write a test that checks that if I define my own custom variable storage class I can @max-sixty this is entirely a typing challenge, so I'm tagging you in case you're interested :)
EDIT: Also using |
{ "url": "https://api.github.com/repos/pydata/xarray/issues/6086/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
xarray 13221727 | pull | |||||
602218021 | MDU6SXNzdWU2MDIyMTgwMjE= | 3980 | Make subclassing easier? | TomNicholas 35968931 | open | 0 | 9 | 2020-04-17T20:33:13Z | 2023-10-04T16:27:28Z | MEMBER | SuggestionWe relatively regularly have users asking about subclassing However, while useful, the accessors aren't enough for some users, and I think we could probably do better. If we refactored internally we might be able to make it much easier to subclass. Example to follow in PandasPandas takes an interesting approach: while they also explicitly discourage subclassing, they still try to make it easier, and show you what you need to do in order for it to work. They ask you to override some constructor properties with your own, and allow you to define your own original properties. Potential complications
DocumentationI think if we do this we should also slightly refactor the relevant docs to make clear the distinction between 3 groups of people: - Users - People who import and use xarray at the top-level with (ideally) no particular concern as to how it works. This is who the vast majority of the documentation is for. - Developers - People who are actually improving and developing xarray upstream. This is who the Contributing to xarray page is for. - Extenders - People who want to subclass, accessorize or wrap xarray objects, in order to do something more complicated. These people are probably writing a domain-specific library which will then bring in a new set of users. There maybe aren't as many of these people, but they are really important IMO. This is implicitly who the xarray internals page is aimed at, but it would be nice to make that distinction much more clear. It might also be nice to give them a guide as to "I want to achieve X, should I use wrapping/subclassing/accessors?" @max-sixty you had some ideas about what would need to be done for this to work? |
{ "url": "https://api.github.com/repos/pydata/xarray/issues/3980/reactions", "total_count": 11, "+1": 11, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
xarray 13221727 | issue | ||||||||
936045730 | MDExOlB1bGxSZXF1ZXN0NjgyODYzMjgz | 5568 | Add to_numpy() and as_numpy() methods | TomNicholas 35968931 | closed | 0 | 9 | 2021-07-02T20:17:40Z | 2021-07-21T22:06:47Z | 2021-07-21T21:42:48Z | MEMBER | 0 | pydata/xarray/pulls/5568 |
|
{ "url": "https://api.github.com/repos/pydata/xarray/issues/5568/reactions", "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
xarray 13221727 | pull | |||||
671609109 | MDU6SXNzdWU2NzE2MDkxMDk= | 4300 | General curve fitting method | TomNicholas 35968931 | closed | 0 | 9 | 2020-08-02T12:35:49Z | 2021-03-31T16:55:53Z | 2021-03-31T16:55:53Z | MEMBER | Xarray should have a general curve-fitting function as part of its main API. MotivationYesterday I wanted to fit a simple decaying exponential function to the data in a DataArray and realised there currently isn't an immediate way to do this in xarray. You have to either pull out the This is an incredibly common, domain-agnostic task, so although I don't think we should support various kinds of unusual optimisation procedures (which could always go in an extension package instead), I think a basic fitting method is within scope for the main library. There are SO questions asking how to achieve this. We already have Proposed syntaxI want something like this to work: ```python def exponential_decay(xdata, A=10, L=5): return A*np.exp(-xdata/L) returns a dataset containing the optimised values of each parameterfitted_params = da.fit(exponential_decay) fitted_line = exponential_decay(da.x, A=fitted_params['A'], L=fitted_params['L']) Compareda.plot(ax) fitted_line.plot(ax) ``` It would also be nice to be able to fit in multiple dimensions. That means both for example fitting a 2D function to 2D data: ```python def hat(xdata, ydata, h=2, r0=1): r = xdata2 + ydata2 return h*np.exp(-r/r0) fitted_params = da.fit(hat) fitted_hat = hat(da.x, da.y, h=fitted_params['h'], r0=fitted_params['r0']) ``` but also repeatedly fitting a 1D function to 2D data: ```python da now has a y dimension toofitted_params = da.fit(exponential_decay, fit_along=['x']) As fitted_params now has y-dependence, broadcasting means fitted_lines does toofitted_lines = exponential_decay(da.x, A=fitted_params.A, L=fitted_params.L)
So the method docstring would end up like ```python def fit(self, f, fit_along=None, skipna=None, full=False, cov=False): """ Fits the function f to the DataArray.
``` Questions1) Should it wrap
2) What form should we expect the curve-defining function to come in?
3) Is it okay to inspect parameters of the curve-defining function?
|
{ "url": "https://api.github.com/repos/pydata/xarray/issues/4300/reactions", "total_count": 4, "+1": 3, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 1 } |
completed | xarray 13221727 | issue | ||||||
349026158 | MDU6SXNzdWUzNDkwMjYxNTg= | 2355 | Animated plots - a suggestion for implementation | TomNicholas 35968931 | closed | 0 | 9 | 2018-08-09T08:23:17Z | 2020-08-16T08:07:12Z | 2020-08-16T08:07:12Z | MEMBER | It'd be awesome if one could animate the plots xarray creates using matplotlib just by specifying the dimension over which to animate the plot. This would allow for rapid visualisation of time-evolving data and could potentially be very powerful (imagine a grid of faceted 2d plots, all evolving together over time). I know that there are already some libraries which can create animated plots of xarray data (e.g. Holoviews), but I think that it's within xarray's scope (#2030) to add another dimension to its default matplotlib-style plotting capabilities. How? I saw this new package for making it easier to animate matplotlib plots using the funcanimation module: animatplot. It essentially works by wrapping matplotlib commands like ```python import animatplot as amp import matplotlib.pyplot as plt X, Y = load_data_somehow block = amp.blocks.Line(X, Y) anim = amp.Animation([block]) anim.save_gif("animated_line") plt.show() ``` which creates a basic gif like this: I think that it might be possible to integrate this kind of animation-plotting tool by adding an optional dimension argument to xarray's plotting methods, which if given causes the function to call the wrapped animatplot plotting command instead of the bare matplotlib one. It would then return the corresponding "block" ready to be animated. Using the resulting code might only require a few lines to create an impressive visualisation: ```python turb2d = xr.load_dataset("turbulent_fluid_data.nc") block = turb2d["density"].plot.imshow(animate_over='time') anim = Animation([block]) anim.save_gif("fluid_density.gif") plt.show() ``` What would need changing? If we take the I wanted to ask about this before delving into the code too much or submitting a pull request, in case there is some problem with the idea. What do you think? |
{ "url": "https://api.github.com/repos/pydata/xarray/issues/2355/reactions", "total_count": 1, "+1": 1, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
completed | xarray 13221727 | issue |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE [issues] ( [id] INTEGER PRIMARY KEY, [node_id] TEXT, [number] INTEGER, [title] TEXT, [user] INTEGER REFERENCES [users]([id]), [state] TEXT, [locked] INTEGER, [assignee] INTEGER REFERENCES [users]([id]), [milestone] INTEGER REFERENCES [milestones]([id]), [comments] INTEGER, [created_at] TEXT, [updated_at] TEXT, [closed_at] TEXT, [author_association] TEXT, [active_lock_reason] TEXT, [draft] INTEGER, [pull_request] TEXT, [body] TEXT, [reactions] TEXT, [performed_via_github_app] TEXT, [state_reason] TEXT, [repo] INTEGER REFERENCES [repos]([id]), [type] TEXT ); CREATE INDEX [idx_issues_repo] ON [issues] ([repo]); CREATE INDEX [idx_issues_milestone] ON [issues] ([milestone]); CREATE INDEX [idx_issues_assignee] ON [issues] ([assignee]); CREATE INDEX [idx_issues_user] ON [issues] ([user]);