Konturen in matplotlib vor Surface anzeigen
Ich habe mich nach Antworten umgesehen, kann aber nicht erkennen, warum in meinem Code die projizierten Konturen nicht "hinter" der Oberfläche angezeigt werden.
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
fig = plt.figure()
ax = fig.gca(projection='3d')
X = np.array([[200,800,1500,2000,3000],[200,700,1500,2000,3000],[200,800,1500,2000,3000],[200,800,1500,2000,3000]])
Y = np.array([[50,50,50,50,50],[350,350,350,350,350],[500,500,500,500,500],[1000,1000,1000,1000,1000]])
Z = np.array([[0,0,33,64,71],[44,62,69,74,76],[59,67,72,75,77],[63,68,73,76,77]])
ax.plot_surface(X, Y, Z, rstride=1, cstride=1, alpha=0.5)
cset = ax.contourf(X, Y, Z, zdir='z', offset=0, cmap=cm.coolwarm)
cset = ax.contourf(X, Y, Z, zdir='x', offset=200, cmap=cm.coolwarm)
cset = ax.contourf(X, Y, Z, zdir='y', offset=1000, cmap=cm.coolwarm)
ax.set_xlabel('X')
ax.set_xlim(200, 3000)
ax.set_ylabel('Y')
ax.set_ylim(0, 1000)
ax.set_zlabel('Z')
ax.set_zlim(0, 100)
plt.show()
Ich habe einen der ausgefüllten Konturdiagramme auf dieser Seite als Vorlage verwendet:http: //matplotlib.org/mpl_toolkits/mplot3d/tutorial.html#scatter-plot
Im Moment war das Beste, was ich bekommen konnte, den Alpha-Wert der Konturen zu ändern. Ich habe auch versucht, die Oberfläche nach den Konturen zu zeichnen, aber das hat nichts geändert.
Jeder Rat wäre sehr willkommen!