Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork7.9k
Closed
Labels
Description
Bug report
Bug summary
For people who use numpy.datetime64() arrays with pcolormesh, a DeprecationWarning has been appearing prompting users to specify a shading kwarg 'nearest', 'auto' or 'gouraud' since shading='flat' is being deprecated. However, passing 'nearest' results in a UFuncTypeError when using 'nearest' due to a casting issue in _axes.py from _interp_grid()
Code for reproduction
importnumpyasnpimportmatplotlib.pyplotasplttimes=np.arange(np.datetime64('2020-12-01'),np.datetime64('2020-12-31'))yaxis=np.arange(0,20)caxis=np.random.normal(0.0,1.0, (times.shape[0],yaxis.shape[0]))plt.pcolormesh(times,yaxis,caxis.T,shading='nearest')plt.show()
Actual outcome
Traceback (most recent call last): File "..\test.py", line 15, in <module> plt.pcolormesh(times, yaxis, caxis.T, shading='nearest') File "C:\Users\iarey\anaconda3\lib\site-packages\matplotlib\pyplot.py", line 2801, in pcolormesh __ret = gca().pcolormesh( File "C:\Users\iarey\anaconda3\lib\site-packages\matplotlib\__init__.py", line 1438, in inner return func(ax, *map(sanitize_sequence, args), **kwargs) File "C:\Users\iarey\anaconda3\lib\site-packages\matplotlib\axes\_axes.py", line 6093, in pcolormesh X, Y, C, shading = self._pcolorargs('pcolormesh', *args, File "C:\Users\iarey\anaconda3\lib\site-packages\matplotlib\axes\_axes.py", line 5651, in _pcolorargs X = _interp_grid(X) File "C:\Users\iarey\anaconda3\lib\site-packages\matplotlib\axes\_axes.py", line 5633, in _interp_grid if not (np.all(dX >= 0) or np.all(dX <= 0)):UFuncTypeError: Cannot cast ufunc 'greater_equal' input 0 from dtype('<m8[D]') to dtype('<m8') with casting rule 'same_kind'
Expected outcome
A pcolormesh timeseries plot with random data and a np.datetime64() x-axis.
Matplotlib version
- Operating system: Windows 10
- Matplotlib version: 3.3.2 via standard conda
- Matplotlib backend: Qt5Agg
- Python version: 3.8.5
- Jupyter version (if applicable):
- Other libraries: numpy-1.19.2