【问题标题】:AttributeError: 'numpy.ndarray' object has no attribute 'step'AttributeError:“numpy.ndarray”对象没有属性“step”
【发布时间】:2018-12-11 13:07:36
【问题描述】:

我想获得 3d 网格,我使用以下命令:

x = np.linspace(-10,10,100) y = np.linspace(-10,10,100) z = np.linspace(-10,10,100) X,Y,Z = np.mgrid[x, y, z]

这样的错误就出现了

AttributeError Traceback(最近一次调用最后一次) 在 () 6 7 ----> 8 X,Y,Z = np.mgrid[x, y, z] 9 10 #X,Y,Z = np.mgrid[-10:10, -10:10, -10:10] ~/Desktop/PyProjects/Phys/env/lib/python3.6/site-packages/numpy/lib/index_tricks.py in __getitem__(self, key) 165 典型 = 整数 166 for k in range(len(key)): --> 167 步 = key[k].step 168开始=键[k].开始 169 如果开始为无: AttributeError:“numpy.ndarray”对象没有属性“step”

我知道我可以使用这个表格来生成网格

X,Y,Z = np.mgrid[-10:10, -10:10, -10:10]

但它对我来说不是移动的

【问题讨论】:

  • 我相信 mgrid 只是一种传递切片的便捷方式。通常函数是meshgrid:np.meshgrid(x, y, z)。这对你有用吗?
  • 我很愚蠢,因为我不知道。非常感谢)它对我有用
  • 您应该将其发布为答案并接受它,以便其他人可以更清楚地看到它:)
  • 也许@user2285236 应该这样做并获得所有学分)

标签: python numpy


【解决方案1】:

尝试使用 np.meshgrid() 代替 mgrid:

X, Y, Z = np.meshgrid(x, y, z)

【讨论】:

    猜你喜欢
    • 2020-12-03
    • 2020-11-29
    • 2020-10-06
    • 2018-01-25
    • 2016-06-29
    • 2020-03-25
    • 2013-12-07
    • 2017-10-16
    • 2020-02-23
    相关资源
    最近更新 更多