Límites de eje para el diagtwig de dispersión que no se mantiene en matplotlib

Estoy tratando de superponer una gráfica de dispersión en una gráfica de contorno usando matplotlib, que contiene

plt.contourf(X, Y, XYprof.T, self.nLevels, extent=extentYPY, \ origin = 'lower') if self.doScatter == True and len(xyScatter['y']) != 0: plt.scatter(xyScatter['x'], xyScatter['y'], \ s=dSize, c=myColor, marker='.', edgecolor='none') plt.xlim(-xLimHist, xLimHist) plt.ylim(-yLimHist, yLimHist) plt.xlabel(r'$x$') plt.ylabel(r'$y$') 

Lo que termina sucediendo es que los gráficos resultantes se extienden para incluir todos los puntos de dispersión, que pueden exceder los límites para el gráfico de contorno. ¿Hay alguna forma de evitar esto?

Utilicé el siguiente ejemplo para intentar replicar su problema. Si se deja por defecto, el rango para x e y fue de -3 a 3. Ingresé xlim y ylim, de modo que el rango para ambos fue de -2 a 2. Funcionó.

  import numpy as np import matplotlib.pyplot as plt from pylab import * # the random data x = np.random.randn(1000) y = np.random.randn(1000) fig = plt.figure(1, figsize=(5.5,5.5)) X, Y = meshgrid(x, y) Z1 = bivariate_normal(X, Y, 1.0, 1.0, 0.0, 0.0) Z2 = bivariate_normal(X, Y, 1.5, 0.5, 1, 1) Z = 10 * (Z1 - Z2) origin = 'lower' CS = contourf(x, y, Z, 10, # [-1, -0.1, 0, 0.1], cmap=cm.bone, origin=origin) title('Nonsense') xlabel('x-stuff') ylabel('y-stuff') # the scatter plot: axScatter = plt.subplot(111) axScatter.scatter(x, y) # set axes range plt.xlim(-2, 2) plt.ylim(-2, 2) show()