ValueError: shape mismatch: objects cannot be broadcast to a single shape

诗岑 2020-04-28 09:01:43
向各位大神求教

import matplotlib.pyplot as plt
import matplotlib.font_manager as font_manager
import numpy as np
import csv
f=open("C:/Users/jyz_1/Desktop/datamodi.csv","r")
y_list=[]
t0=eval(input("时间间隔:"))
POINTS = 10*t0+1
y_list = [0] * POINTS
indx = 0
fig, ax = plt.subplots()
ax.set_ylim([0,40])
ax.set_xlim([0, POINTS])
ax.set_autoscale_on(False)
ax.set_xticks(range(0, 10*t0, t0))
ax.set_yticks(range(0,40,5))
ax.grid(True)
line_y, = ax.plot(range(POINTS), y_list, label='y output', color='cornflowerblue')
ax.legend(loc='upper center', ncol=4, prop=font_manager.FontProperties(size=10))
def y_output(ax):
global indx, y_list, line_y
if indx == 20:
indx = 0
indx += 1
f=open("C:/Users/jyz_1/Desktop/datamodi.csv","r")
y_list=[]
reader=csv.reader(f)
for low in reader:
for y in low:
y_list=np.append(y_list,eval(y))
line_y.set_ydata(y_list)
ax.draw_artist(line_y)
ax.figure.canvas.draw()
timer = fig.canvas.new_timer(interval=100)
timer.add_callback(y_output, ax)
timer.start()
plt.show()

报错:

Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\tkinter\__init__.py", line 1883, in __call__
return self.func(*args)
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\tkinter\__init__.py", line 804, in callit
func(*args)
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\backends\_backend_tk.py", line 114, in _on_timer
TimerBase._on_timer(self)
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\backend_bases.py", line 1187, in _on_timer
ret = func(*args, **kwargs)
File "C:\Users\jyz_1\Desktop\sensor_ver1.py", line 32, in y_output
ax.draw_artist(line_y)
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\axes\_base.py", line 2644, in draw_artist
a.draw(self.figure._cachedRenderer)
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\artist.py", line 38, in draw_wrapper
return draw(artist, renderer, *args, **kwargs)
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\lines.py", line 759, in draw
self.recache()
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\lines.py", line 679, in recache
self._xy = np.column_stack(np.broadcast_arrays(x, y)).astype(float)
File "<__array_function__ internals>", line 5, in broadcast_arrays
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\numpy\lib\stride_tricks.py", line 264, in broadcast_arrays
shape = _broadcast_shape(*args)
File "C:\Users\jyz_1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\numpy\lib\stride_tricks.py", line 191, in _broadcast_shape
b = np.broadcast(*args[:32])
ValueError: shape mismatch: objects cannot be broadcast to a single shape




...全文
1402 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

37,742

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧