正在创建列表np.阿朗

2024-09-28 22:19:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我想创建列表,所以我使用了:

x_ticks=np.arange(x1, x2, 6)
print(x_ticks)
print(type(x_ticks))
print(x_ticks[5])

结果是:

[-1.15e-14]
<class 'numpy.ndarray'>
Traceback (most recent call last):
  File "el_motion.py", line 371, in <module>
    print(x_ticks[5])
IndexError: index 5 is out of bounds for axis 0 with size 1

为什么没有打印6个元素?谢谢

编辑

如何使用此列表和for cycle绘制三维小线条?你知道吗

x1=-1.15e-14
x2=0.009e-14
x_ticks=np.linspace(x1, x2, 6)
print(x_ticks)
print(type(x_ticks))
print(x_ticks[5])

stepx=(x2-x1)/6
print(stepx)
for xi in range(1, 6):
    ax.plot([xi*stepx, xi*stepx], [-6.3e-15, -6.4e-15], [0,0])

结果是一行不在所需位置。我想把它打印在平面z上,线条的长度由y设置,起点由x定义


Tags: innumpy列表fortypenpclass线条
2条回答

numpyarange()的第三个参数是step,元素的数量取决于x1x26,您可能需要打印出x_ticks。示例:

>>> np.arange(0, 24, 6)
array([ 0,  6, 12, 18])
>>> np.arange(0, 30, 6)
array([ 0,  6, 12, 18, 24])

我的猜测是x1和x2之间的差值小于所提供的步长间隔(6)。例如:

np.arange(1, 5)

印刷品

[1, 2, 3, 4]

鉴于

np.arange(1, 5, 6)

6的步长太大,因此它只返回第一个值

[1]

你知道吗np.L空间(x1,x2,6)另一方面,将返回x1 one和x2之间均匀间隔的增量,得到6个数字

相关问题 更多 >