我想知道为什么y轴的顺序是随机的(请参见屏幕截图)。我正在从带有值对的文本文件中仅绘制x和y值,并希望y轴从最小值开始,以最大值结束。在我的情况下,y轴图的中间最小的数字(3)。我该如何纠正这种故障?
txt文件:
1,5
2,3
3,5
4,3
5,7
6,3
7,5
8,3
9,5
10,3
代码:
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from matplotlib import style
style.use('fivethirtyeight')
fig = plt.figure()
ax1 = fig.add_subplot(1,1,1)
def animate(i):
graph_data = open('example.txt','r').read()
lines = graph_data.split('\n')
xs = []
ys = []
for line in lines:
if len(line) > 1:
x, y = line.split(',')
xs.append(x)
ys.append(y)
ax1.clear()
ax1.plot(xs, ys)
ani = animation.FuncAnimation(fig, animate, interval=1000) # 1000 ms = 1 sec (updating)
plt.show()
我发现编辑以下两行代码会有所帮助!
之前: xs.append(x) ys.append(y)
之后: xs.append(float(x)) ys.append(float(y))
答案 0 :(得分:1)
您在一行中指定了FiveThirtyEight样式
style.use('fivethirtyeight')
只需将其删除即可使用常规打印样式。