home / github

Menu
  • GraphQL API
  • Search all tables

issue_comments

Table actions
  • GraphQL API for issue_comments

9 rows where author_association = "MEMBER" and issue = 324740017 sorted by updated_at descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: reactions, created_at (date), updated_at (date)

user 3

  • spencerkclark 5
  • rabernat 2
  • shoyer 2

issue 1

  • holoviews / bokeh doesn't like cftime coords · 9 ✖

author_association 1

  • MEMBER · 9 ✖
id html_url issue_url node_id user created_at updated_at ▲ author_association body reactions performed_via_github_app issue
450054994 https://github.com/pydata/xarray/issues/2164#issuecomment-450054994 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQ1MDA1NDk5NA== spencerkclark 6628425 2018-12-27T02:01:42Z 2018-12-27T02:01:42Z MEMBER

For those interested in this topic, see https://github.com/SciTools/nc-time-axis/pull/42.

I'll also note that @philippjfr has already added support for plotting cftime types in holoviews, https://github.com/ioam/holoviews/pull/2728, making use of the nc_time_axis.CalendarDateTime object in its matplotlib backend.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
404872061 https://github.com/pydata/xarray/issues/2164#issuecomment-404872061 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQwNDg3MjA2MQ== spencerkclark 6628425 2018-07-13T15:44:20Z 2018-07-13T15:44:20Z MEMBER

Thanks @pelson, that's good to hear that you would be open to someone doing some refactoring in nc-time-axis.

@rabernat @aidanheerdegen @jbusecke I think the cleanest approach for someone interested in fixing the built-in plotting issue then would be to engage with the nc-time-axis folks to see if there is a way to enable plotting with cftime.datetime objects directly (that they would feel comfortable with). Then in xarray, modulo some logic to handle the optional imports of cftime and nc_time_axis, I think it could just be a matter of adding cftime.datetime as one of the allowed types for plotting (within here), adding some tests, and maybe a documentation example.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
404855693 https://github.com/pydata/xarray/issues/2164#issuecomment-404855693 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQwNDg1NTY5Mw== shoyer 1217238 2018-07-13T14:48:28Z 2018-07-13T14:48:28Z MEMBER

Why a separate package and not in nc-time-axis? (Or alternatively, just in cftime, as you say)

Yes, of course, that would probably be preferred. 👍

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
404735004 https://github.com/pydata/xarray/issues/2164#issuecomment-404735004 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQwNDczNTAwNA== shoyer 1217238 2018-07-13T06:03:31Z 2018-07-13T06:03:31Z MEMBER

From a cursory examination, it sure looks (to me) that nc_time_axis could be made to directly support plotting of cftime.datetime classes. This could probably either be done in a separate package or upstream in cftime.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
404541298 https://github.com/pydata/xarray/issues/2164#issuecomment-404541298 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQwNDU0MTI5OA== spencerkclark 6628425 2018-07-12T14:55:59Z 2018-07-12T14:55:59Z MEMBER

I think a quick and dirty fix could be to add nc-time-axis as an optional dependency, and convert any cftime.datetime objects encountered in plotting routines to nc_time_axis.CalendarDateTime objects before passing them to matplotlib.

But I wonder if there is potentially room for improvement upstream in cftime? Should we need to convert to these proxy objects before plotting or might there be a way to make cftime objects themselves more friendly to use with matplotlib? That could have benefits for multiple libraries (not just xarray).

@pelson @lbdreyer @ocefpaf (developers of nc-time-axis and Iris) -- it seems you have grappled with this problem a fair bit already. Have you thought about those questions before?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
404481020 https://github.com/pydata/xarray/issues/2164#issuecomment-404481020 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQwNDQ4MTAyMA== rabernat 1197350 2018-07-12T11:29:22Z 2018-07-12T11:29:22Z MEMBER

Thanks for your follow up comment. I understand much better where you are coming from now! We do sincerely appreciate your feedback and contributions. Yes: we definitely want xarray to be adopted widely!

There is no doubt that these weird calendars are a continuous source of frustration. The challenge is compounded by the fast that, basically, only the climate community needs them. All of the fancy time indexing stuff in pandas is most likely there because of its value to the finance community.

Maybe a good path forward would be for @spencerkclark to outline what steps might be needed to get xarray's built in plotting to work with cftimeindex. That way, anyone who urgently needs this feature has some sort of roadmap for starting to implement it themselves.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
404441216 https://github.com/pydata/xarray/issues/2164#issuecomment-404441216 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQwNDQ0MTIxNg== rabernat 1197350 2018-07-12T08:56:46Z 2018-07-12T08:56:46Z MEMBER

Darn. Just when I thought the time stuff was sorted. This is (yet another) deal breaker as far as recommending mass adoption goes.

@aidanheerdegen -- support for unconventional time coordinates (via cftime) is not a trivial problem--there are many special cases and complex logic to deal with. Rather than being discouraged by this bug, I encourage you to take a longer view to see how much this support has improved over the past year. One year ago, xarray could not have decoded this time coordinate at all!

I'm curious what you are referring to with your comment about "mass adoption." To whom are you making recommendations about adoption of xarray? And what do you consider the numerous other dealbreakers to be? I hope you see that these blanket comments could be read as quite discouraging and negative to the volunteer developers working hard on xarray.

Is there an estimate when, or if, cftime indexes will be supported by xarray's .plot() method?

The work on cftimeindex is being done entirely on a volunteer basis by graduate students like @spencerkclark (👏 👏 👏). In order to make xarray development progress faster, we need more contributors to the project. In my view, the ideal place to recruit such contributors is from within the paid computational support staff from major climate modeling centers. These people are ideally poised to understand what features are most important to users, and they are actually paid to help develop tools (like xarray) to help users be more productive. We recently created a contributor guide to make it easier for new contributors to come on board. If you can think of anyone who might be interested in contributing to xarray, please let us know, either here or via a private channel.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
404020492 https://github.com/pydata/xarray/issues/2164#issuecomment-404020492 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDQwNDAyMDQ5Mg== spencerkclark 6628425 2018-07-11T02:00:06Z 2018-07-11T02:00:06Z MEMBER

@jbusecke I recently stumbled upon https://github.com/SciTools/nc-time-axis. You can install it through conda-forge: $ conda install -c conda-forge nc-time-axis However, for now you won't be able to use xarray's built in plotting, since xarray will raise an error if you try to plot anything with coordinates that aren't numeric or of type datetime.datetime or np.datetime64 (but nc-time-axis at least gives you matplotlib support). You'll also need to convert your dates to nc_time_axis.CalendarDateTime objects; you can do that with a simple list comprehension (see the example in their README).

{
    "total_count": 2,
    "+1": 2,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017
390824520 https://github.com/pydata/xarray/issues/2164#issuecomment-390824520 https://api.github.com/repos/pydata/xarray/issues/2164 MDEyOklzc3VlQ29tbWVudDM5MDgyNDUyMA== spencerkclark 6628425 2018-05-22T00:22:31Z 2018-05-22T00:22:31Z MEMBER

I agree it would be very nice to enable plotting data with cftime.datetime coordinates with holoviews. Eventually it would also be great if we could enable it for xarray's built-in plotting too. I'm happy to help out where I can.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  holoviews / bokeh doesn't like cftime coords 324740017

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [issue_comments] (
   [html_url] TEXT,
   [issue_url] TEXT,
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [created_at] TEXT,
   [updated_at] TEXT,
   [author_association] TEXT,
   [body] TEXT,
   [reactions] TEXT,
   [performed_via_github_app] TEXT,
   [issue] INTEGER REFERENCES [issues]([id])
);
CREATE INDEX [idx_issue_comments_issue]
    ON [issue_comments] ([issue]);
CREATE INDEX [idx_issue_comments_user]
    ON [issue_comments] ([user]);
Powered by Datasette · Queries took 13.198ms · About: xarray-datasette