@@ -5232,6 +5232,7 @@ def _pcolorargs(funcname, *args, **kw):
5232
5232
# is False.
5233
5233
5234
5234
allmatch = kw .pop ("allmatch" , False )
5235
+ dropdata = kw .pop ("dropdata" , True )
5235
5236
5236
5237
if len (args ) == 1 :
5237
5238
C = np .asanyarray (args [0 ])
@@ -5274,22 +5275,25 @@ def _pcolorargs(funcname, *args, **kw):
5274
5275
' X (%d) and/or Y (%d); see help(%s)' % (
5275
5276
C .shape , Nx , Ny , funcname ))
5276
5277
5277
- def _interp_grid (X ):
5278
- # helper for below
5279
- dX = np .diff (X , axis = 1 )/ 2.
5280
- X = np .hstack ((X [:, [0 ]] - dX [:, [0 ]],
5281
- X [:, :- 1 ] + dX ,
5282
- X [:, [- 1 ]] + dX [:, [- 1 ]])
5283
- )
5284
- return X
5285
-
5286
- if numCols == Nx :
5287
- X = _interp_grid (X )
5288
- Y = _interp_grid (Y )
5289
-
5290
- if numRows == Ny :
5291
- X = _interp_grid (X .T ).T
5292
- Y = _interp_grid (Y .T ).T
5278
+ if dropdata :
5279
+ C = C [:Ny - 1 , :Nx - 1 ]
5280
+ else :
5281
+ def _interp_grid (X ):
5282
+ # helper for below
5283
+ dX = np .diff (X , axis = 1 )/ 2.
5284
+ X = np .hstack ((X [:, [0 ]] - dX [:, [0 ]],
5285
+ X [:, :- 1 ] + dX ,
5286
+ X [:, [- 1 ]] + dX [:, [- 1 ]])
5287
+ )
5288
+ return X
5289
+
5290
+ if numCols == Nx :
5291
+ X = _interp_grid (X )
5292
+ Y = _interp_grid (Y )
5293
+
5294
+ if numRows == Ny :
5295
+ X = _interp_grid (X .T ).T
5296
+ Y = _interp_grid (Y .T ).T
5293
5297
5294
5298
C = cbook .safe_masked_invalid (C )
5295
5299
return X , Y , C
0 commit comments