tiempo real matrices instalar graficas graficar grafica coordenadas barras python matplotlib scatter-plot scatter

python - real - Matplotlib: Diagrama de dispersión en primer plano en la parte superior de un diagrama de contorno



matplotlib python (1)

Puede elegir manualmente en qué orden se mostrarán los diferentes gráficos con el parámetro zorder de, por ejemplo, el método de scatter .

Para demostrarlo, consulte el siguiente código, donde el diagrama de dispersión en la subparcela izquierda tiene zorder=1 y en la subparcela derecha tiene zorder=-1 . El objeto con el zorder más zorder se coloca en la parte superior. Esto significa que la dispersión se colocará en la parte superior del contorno en la primera subparcela, mientras que se coloca debajo de la segunda subparcela.

import numpy as np import matplotlib.cm as cm import matplotlib.mlab as mlab import matplotlib.pyplot as plt delta = 0.025 x = np.arange(-3.0, 3.0, delta) y = np.arange(-2.0, 2.0, delta) X, Y = np.meshgrid(x, y) Z1 = mlab.bivariate_normal(X, Y, 1.0, 1.0, 0.0, 0.0) Z2 = mlab.bivariate_normal(X, Y, 1.5, 0.5, 1, 1) Z = 10.0 * (Z2 - Z1) norm = cm.colors.Normalize(vmax=abs(Z).max(), vmin=-abs(Z).max()) cmap = cm.PRGn levels = np.arange(-2.0, 1.601, 0.4) fig, axes = plt.subplots(1,2, sharey=True) for ax, zord in zip(axes, [1, -1]): ax.contourf(X, Y, Z, levels, cmap=cm.get_cmap(cmap, len(levels)-1), norm=norm) ax.autoscale(False) # To avoid that the scatter changes limits ax.scatter(np.random.uniform(-3,3,10), np.random.uniform(-2,2,10), zorder=zord) ax.set_title(''Scatter with zorder={0}''.format(zord))

¿Alguien sabe una forma de llevar un diagrama de dispersión al primer plano en matplotlib? Tengo que mostrar el trazado de dispersión en la parte superior del contorno, pero por defecto está trazado debajo ...

¡Gracias por adelantado!