Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:使用随机x和y绘制3d函数的最佳方法_Python_Mplot3d - Fatal编程技术网

Python:使用随机x和y绘制3d函数的最佳方法

Python:使用随机x和y绘制3d函数的最佳方法,python,mplot3d,Python,Mplot3d,我生成了一个二维数组,在每一行中,有一个随机的x,随机的y和f(x,y)。 我选择了randomx和y,因为f(x,y)的计算时间很长 我使用mpl\u工具包.mplot3d中的Axes3D绘制结果: ax.scatter(tableau[:,0], tableau[:,1], zs=tableau[:,2], c='r', marker='o') 结果是没有用的。无法理解f的形状 有没有更好的方法来绘制f(x,y)?如果您的目标是更好地查看函数的形状,您可以使用matplotlib方法旋转

我生成了一个二维数组,在每一行中,有一个随机的x,随机的y和f(x,y)。 我选择了random
x
y
,因为
f(x,y)
的计算时间很长

我使用
mpl\u工具包.mplot3d
中的
Axes3D
绘制结果:

ax.scatter(tableau[:,0], tableau[:,1], zs=tableau[:,2], c='r', marker='o')
结果是没有用的。无法理解f的形状


有没有更好的方法来绘制f(x,y)?

如果您的目标是更好地查看函数的形状,您可以使用matplotlib方法旋转轴
view_init(elev=None,azim=None)
;它设置轴角度的仰角和方位角。例如:

from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# Test 3D function
X, Y, Z = axes3d.get_test_data(0.1)
ax.plot_wireframe(X, Y, Z, rstride=5, cstride=5)

ax.view_init(elev, azim)

plt.draw()
当elev=30且azim=45时:

当elev=30且azim=90时:

当elev=0且azim=90时:


谢谢你的回答。因为(x,y)的集合是不规则的,所以结果也不是很好。我将把结果加起来作为我问题的答案
  fig = plt.figure()
  ax = fig.add_subplot(111, projection='3d')
  elev=70 
  azim=30
  X, Y, Z = tableau[:,0], tableau[:,1], tableau[:,2]
  ax.plot_wireframe(X, Y, Z, rstride=5, cstride=5)

  ax.view_init(elev, azim)

  plt.draw()