Py学习  »  Python

曲面上的三维点PYTHON

alienflow • 5 年前 • 229 次点击  

我想在表面上画出一些点。我想得到的结果是(右边的图): enter image description here

f = lambda x : x[0]**2+x[1]**3+3*x[0]*x[1]
x_axis = [x_k[i][0] for i in range(0, len(x_k))]
y_axis = [x_k[i][1] for i in range(0, len(x_k))]
z_axis = [f(x_k[i]) for i in range(0, len(x_k))]

x = np.linspace(-6, 6, 30)
y = np.linspace(-6, 6, 30)

X, Y = np.meshgrid(x, y)
Z = f(np.array([X, Y]))

ax = plt.axes(projection='3d')
ax.plot_surface(X, Y, Z,alpha=0.8,cmap='viridis',edgecolor='white',linewidth=0.3)
ax.scatter(x_axis, y_axis, z_axis, zdir='z',marker='.', s=10, c='black', depthshade=False)
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
ax.set_aspect("equal")
plt.tight_layout()
plt.show()

我明白了: enter image description here

看到点是透明的因为表面。。。

enter image description here

我希望他们是黑人,以便更好地看到他们。我怎么能那样做?谢谢您!

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/53352
 
229 次点击