gpt4 book ai didi

python - 当 x 轴不等距时,Matplotlib 不会连接数据点

转载 作者:太空宇宙 更新时间:2023-11-03 17:30:11 25 4
gpt4 key购买 nike

我的真实数据有数千个数据点,因此我目前正在使用一个小数组来测试。

我试图去掉 y 轴数据中的零,并根据 x 轴数据中的相关索引绘制非零值。我可以看到我得到了我在新数组中得到了正确的数字,但我的图表是空白的。

我的数组打印的输出:

[array([ 1,  6, 54,  4,  2,  3,  8])]

[array([ 1, 3, 4, 5, 6, 9, 11])]

如果我绘制原始数据,它就可以工作(工作是点全部用线连接起来)。另外如果我添加“.”对于绘图命令,我在应有的位置得到了点,但无法将数据点连接起来。我认为这可能是因为我的新x轴数据不连续,但我不确定。

y1 = np.array([1,0,6,54,4,2,0,0,3,0,8])
x1 = np.array([1,2,3,4,5,6,7,8,9,10,11])
yind = y1.nonzero()
y2 = []
x2 = []

for el in yind:
y2.append(y1[el])
x2.append(x1[el])

print y2
print x2
pl.plot(x2,y2)
pl.show()

最佳答案

基本上你需要做:

plt.plot(x2[0],y2[0])

因为

>>> x2
[array([ 1, 3, 4, 5, 6, 9, 11])]
>>> y2
[array([ 1, 6, 54, 4, 2, 3, 8])]

当您看到 x2y2Type 时,您会看到:

>>> type(y2)
<class 'list'>

但是 x2[0]y2[0] 是您要绘制的数组:

>>> x2[0]
array([ 1, 3, 4, 5, 6, 9, 11])
>>> y2[0]
array([ 1, 6, 54, 4, 2, 3, 8])
>>> type(y2[0])
<class 'numpy.ndarray'>
>>>

关于python - 当 x 轴不等距时,Matplotlib 不会连接数据点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31971243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com