O contorno de Pyplot é invertido ao longo de xy

Eu tenho muitos dados em um gráfico de dispersão - o resultado final terá vários milhões de pontos. Isso é demais para entender em um gráfico de dispersão - quero transformá-lo em um histograma 2D e plotar um gráfico de contorno, conforme descrito aquihttps://micropore.wordpress.com/2011/10/01/2d-density-plot-or-2d-histogram/

Isso é semelhante ao código que estou usando e tem o mesmo problema

import numpy
import matplotlib.pyplot as pyplot

def convert_edges_to_centres(edges):
    centres = numpy.empty(len(edges)-1)
    for i in range(len(centres)): 
        centres[i] = (edges[i+1] - edges[i])/2 + edges[i]
    return centres

x = numpy.random.normal(0,1,50000)
print numpy.amin(x),numpy.amax(x)
y = numpy.random.beta(2,5,50000)
print numpy.amin(y),numpy.amax(y)

H,xedges,yedges=numpy.histogram2d(x,y,bins=25)
xcentres,ycentres=convert_edges_to_centres(xedges),convert_edges_to_centres(yedges)

print numpy.shape(H)
print numpy.shape(xedges),numpy.shape(xcentres)
print numpy.shape(yedges),numpy.shape(ycentres)

extent = [xedges[0], xedges[-1], yedges[0], yedges[-1]]

ax = pyplot.axes()
ax.scatter(x,y)
ax.contour(H,extent=extent)

pyplot.show()

Mas o gráfico de contorno é invertido - parece que provavelmente foi invertido ao longo do xy:

Sei que isso provavelmente é facilmente resolvido, mas não consigo descobrir qual é o problema!

Coloquei a função convert_edges_to_centres, como também tentei plotar usando a sintaxepyplot.contour(x,y,z), mas isso também não funcionou

questionAnswers(1)

yourAnswerToTheQuestion