python读入数据无法正常画图

一个输出动图的程序

import matplotlib.animation as animation
import matplotlib.pyplot as plt
import numpy as np

# 数据处理
x = np.arange(0, 10, 0.1) # 生成一组 x 坐标数据
y = np.sin(x) # 生成一组 y 坐标数据

# 初始化画布和轴
fig, ax = plt.subplots()
line, = ax.plot([], [], 'r')
ax.set_xlim(0, 10)
ax.set_ylim(-1, 1)

# 动画更新函数
def update(num):
    line.set_data(x[:num], y[:num]) # 每次更新显示一个数据点
    return line,

# 动画播放
ani = animation.FuncAnimation(fig, update, frames=len(x), interval=20, blit=True)

# 保存动画文件
ani.save('output.gif', fps=30, savefig_kwargs={'dpi': 80}, writer='pillow')

可以正常输出结果,但如果#数据处理部分改成

x = np.loadtxt('x.txt')
y = np.loadtxt('y.txt')

会输出结果,但是变成了一张只有坐标的空白图了,

img

我已添加了.txt里的数据,并且甚至print(x)输出都是正常的,

img

就是无法实现原来的画图功能了,这是为什么?我想实现的就是根据我保存的数据画图的功能,怎么修改?

你的代码中y轴的数据已经变成了:

img


但是你的代码中设置的y轴的值的范围还是-1到1之间:
ax.set_ylim(-1, 1)
所以显示不出来啊,你要把y轴的取值范围调整为1 到9 就可以了啊