I have a 2D numpy array that I want to plot in a colorbar. I am having trouble changing the axis so that they display my dataset. The vertical axis goes ‘down’ from 0 to 100, whereas I want it to go ‘up’ from 0.0 to 0.1. So I need to do two things:
- Flip the array using np.flipud() and then ‘flip’ the axis as well
- Change the labels to go from 0.0 to 0.1, instead of 0 to 100
Here is an example of what my colorbar plot currently looks like:

And here is the code:
data = np.load('scorr.npy')
(x,y) = np.unravel_index(data.argmax(), data.shape)
max=data[x][y]
fig = plt.figure()
ax = fig.add_subplot(111)
cax = ax.imshow(data, interpolation='nearest')
cbar = fig.colorbar(cax, ticks=[-max, 0, max])
cbar.ax.set_yticklabels([str(-max), '0', str(max)])
plt.show()
Does anybody have any suggestions? Thanks in advance!
You want to look at the imshow options “origin” and “extent”, I think.