given set of n 'co-ordinates', x=[0, 1, 2, 3, 4] , n-1 'values' y = [10, 20, 30, 40] want plot piecewise-constant function equal 10 0 < x <1, equal 20 1 < x < 2 etc. in other words, x-list contains co-ordinates of cells boundaries while y-list represents value of function inside cells. standard way plot such data? i interested in non-regular grids , 2d plots. for 1d data, use bar plot. first argument center of bars, , second height. x=np.asarray([0, 1, 2, 3, 4]) centers=(x[1:]+x[:-1])/2.0 plt.bar(centers,[10, 20, 30, 40],width=1) for 2d data, can use pcolor , colorbar # x coordinates of cells x=np.asarray([0, 1, 2, 3, 4]) # y coordinates of cells y=np.asarray([0,1,2]) # values inside cells c = np.asarray([[10, 20, 30, 40], [50,60,70,80]]) # plot cells plt.pcolor(x,y,c) # plot bar match colors values plt.colorbar() to plot non regular grids, pcolor can take arguments 2d arrays x , y: can specify x , y coordinates each cell. ...