【发布时间】:2023-03-03 13:09:01
【问题描述】:
我正在尝试将实时质谱图放入我正在编写的程序中。到目前为止,我有一个简单的 GUI,为程序提供了基本功能。我还希望它有一个质谱的实时图,一个相当简单的 2D 条形图,大约有 10,000 个峰。我希望用户能够缩放和平移绘图,但 matplotlib 的默认后端真的很慢。我一直在阅读,其他后端可用,推荐使用 TkApp。我还希望它与 tkinter Python 3.3 兼容。
当我尝试更改后端时:
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy
print(mpl.pyplot.get_backend())
mpl.pyplot.switch_backend('TkAgg')
plot = plt.plot([1, 2, 3, 4, 5, 6])
plt.show(plot)
print(mpl.pyplot.get_backend())
输出:
C:\pyzo2013c\lib\site-packages\matplotlib\mathtext.py:46: UserWarning: Due to a bug in pyparsing <= 2.0.0 on Python 3.x, packrat parsing has been disabled. Mathtext rendering will be much slower as a result. Install pyparsing 2.0.0 or later to improve performance.
warn("Due to a bug in pyparsing <= 2.0.0 on Python 3.x, packrat parsing "
Qt4Agg
Traceback (most recent call last):
File "C:\MyPyProgs\Sequencer\spectrum_plot.py", line 7, in <module>
mpl.pyplot.switch_backend('TkAgg')
File "C:\pyzo2013c\lib\site-packages\matplotlib\pyplot.py", line 124, in switch_backend
_backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
File "C:\pyzo2013c\lib\site-packages\matplotlib\backends\__init__.py", line 28, in pylab_setup
globals(),locals(),[backend_name],0)
File "C:\pyzo2013c\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 11, in <module>
import matplotlib.backends.tkagg as tkagg
File "C:\pyzo2013c\lib\site-packages\matplotlib\backends\tkagg.py", line 2, in <module>
from matplotlib.backends import _tkagg
ImportError: cannot import name _tkagg
我正在使用 Pyzo 包。作为修复的几个建议是安装 python3-matplotlib-tk 但是它找不到 pyzo,因为它是 python 的独立安装,所以不在注册表中。任何帮助将不胜感激。
谢谢
【问题讨论】:
标签: python matplotlib tkinter