TclError:无效的命令名称“ pyimage58”

时间:2019-10-28 20:16:37

标签: python matplotlib audio-analysis

我正在关注一个youtube教程,该教程显示了如何使用python可视化音频,并且在尝试执行与他编写的代码完全相同的代码时遇到了这个错误。

fig = plt.figure()
ax = fig.add_subplot(111)
x = np.arange(0 , 2 * CHUNK, 2)
line, = ax.plot(x , np.random.rand(CHUNK))
while True:
    data = stream.read(CHUNK)
    data_int = np.array(struct.unpack(str(2 * CHUNK) + 'B', data), dtype = 'b' )[::2] + 127
    line.set_ydata(data_int)
    fig.canvas.draw()
    fig.canvas.flush_events()

该代码应该输出一个随着我在麦克风上讲话而变化的图表,但是却出现了以下错误:

-------------------------------------------------------------------- 
-------
TclError                                  Traceback (most recent call last)
<ipython-input-33-48f6f2f43ff3> in <module>
      3     data_int = np.array(struct.unpack(str(2 * CHUNK) + 'B', data), dtype = 'b' )[::2] + 127
      4     line.set_ydata(data_int)
----> 5     fig.canvas.draw()

/usr/local/lib/python3.6/dist- 
packages/matplotlib/backends/backend_tkagg.py in draw(self)
      8     def draw(self):
      9         super(FigureCanvasTkAgg, self).draw()
---> 10         _backend_tk.blit(self._tkphoto, self.renderer._renderer, (0, 1, 2, 3))
     11         self._master.update_idletasks()
     12 

/usr/local/lib/python3.6/dist- 
packages/matplotlib/backends/_backend_tk.py in blit(photoimage, aggimage, offsets, bbox)
     86                    math.floor(y1), math.ceil(y2))
     87     else:
---> 88         photoimage.blank()
     89         bboxptr = (0, width, 0, height)
     90     _tkagg.blit(

/usr/lib/python3.6/tkinter/__init__.py in blank(self)
   3546     def blank(self):
   3547         """Display a transparent image."""
-> 3548         self.tk.call(self.name, 'blank')
   3549     def cget(self, option):
   3550         """Return the value of OPTION."""

TclError: invalid command name "pyimage58"

我尝试谷歌搜索此错误,但仅显示“未找到匹配项”。好像以前没有人遇到此错误。如果有人帮助,那就太好了,我被困住了。

PS:这是我的第一个问题,如果我提出的问题不正确,请原谅。

0 个答案:

没有答案