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 1828847255,PR_kwDOAMm_X85Wx-7X,8031,change cumproduct to cumprod,25102059,closed,0,,,3,2023-07-31T10:05:19Z,2023-07-31T16:46:02Z,2023-07-31T16:45:59Z,CONTRIBUTOR,,0,pydata/xarray/pulls/8031," - [x] Closes #8013 `np.cumproduct ` was just called internally, so no change on documentation or deprecation process necessary. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8031/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1817880272,I_kwDOAMm_X85sWqbQ,8013,np.cumproduct deprecated,25102059,closed,0,,,4,2023-07-24T08:11:01Z,2023-07-31T16:46:00Z,2023-07-31T16:46:00Z,CONTRIBUTOR,,,,"### What is your issue? Since numpy version 1.25.0 `np.cumproduct` is deprecated in favor of `np.cumprod`. The coordinates to_index() method still uses it https://github.com/pydata/xarray/blob/971be103d6376d6572d1f12d32526f12f07ae2c7/xarray/core/coordinates.py#L144 which results in an unecessary DeprecationWarning.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8013/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue 1613054013,I_kwDOAMm_X85gJUA9,7593,Plotting with time-zone-aware pd.Timestamp axis not possible,25102059,open,0,,,6,2023-03-07T09:32:49Z,2023-05-06T03:24:46Z,,CONTRIBUTOR,,,,"### What is your issue? When trying to use the plot-method on a DataArray that contains a time axis with time zone aware pandas Timestamps a TypeError is raised. As a minimal example: ```python import pandas as pd import numpy as np import xarray as xr time = pd.date_range(""2000-02-02 08:00+01:00"",""2000-02-02 09:00+01:00"", 121) val = np.arange(121)**2 xar = xr.DataArray(val, coords=dict(time=time)) xar.plot() ``` Results in: `TypeError: Plotting requires coordinates to be numeric, boolean, or dates of type numpy.datetime64, datetime.datetime, cftime.datetime or pandas.Interval. Received data of type object instead.` While matplotlib is capable of handling it. Not in a nice way, but at least without crashing: ```python import matplotlib.pyplot as plt plt.figure() plt.plot(xar.time, xar.values) ``` ![grafik](https://user-images.githubusercontent.com/25102059/223375381-21182680-5ae0-4527-900c-35c609b87aa3.png) I tried that the same result can be achieved, if in the method issuing the `TypeError` https://github.com/pydata/xarray/blob/830ee6de0d545c997df84fe69b0ac2334bde1d1b/xarray/plot/utils.py#L669-L681 also accepts the pandas [`DatetimeTZDtype`](https://pandas.pydata.org/docs/reference/api/pandas.DatetimeTZDtype.html) as a dtype, i.e. it is added to the tuple `numpy_types`. If there are no objections I would issue a PR extending the tuple. # Related observations ## _ensure_plottable removal I found discussions on removing the `_ensure_plottable` method entirely (#5762, #5763), which was not followed through but would likely also solve this issue. ## Pandas Pandas itself is able to even plot the time stamps in a nice way. So, maybe in the long-term it might make sense to use these capabilities. ```python xar.to_series().plot() ``` ![grafik](https://user-images.githubusercontent.com/25102059/223379513-90372884-f509-488c-a548-0c07169096e7.png) ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/7593/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,issue