Я пытаюсь закончить http://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_gui/py_image_display/py_image_display.html#using-matplotlib он работает, но не показывает ничегоMatplotlib работает, но не генерирует график
import numpy as np
import cv2
from matplotlib import pyplot as plt
img = cv2.imread('messi5.jpg',0)
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([]) # to hide tick values on X and Y axis
plt.show()
(я использую Raspberry Pi и последовал этот учебник, чтобы установить открытое резюме http://www.pyimagesearch.com/2015/10/26/how-to-install-opencv-3-on-raspbian-jessie/ впоследствии я пип установленный matplotlib)
если я заменю plt.show с plt.savefig, это работает, что не так?
после добавления импорта matplotlib; matplotlib.use('TkAgg')
и import Tkinter
или tkinter
я получить
(cv) [email protected]:~/Desktop $ python tst4.py
Traceback (most recent call last):
File "tst4.py", line 5, in <module>
from matplotlib import pyplot as plt
File "/home/pi/.virtualenvs/cv/lib/python3.4/site- packages/matplotlib/pyplot.py", line 114, in <module>
_backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
File "/home/pi/.virtualenvs/cv/lib/python3.4/site- packages/matplotlib/backends/__init__.py", line 32, in pylab_setup
globals(),locals(),[backend_name],0)
File "/home/pi/.virtualenvs/cv/lib/python3.4/site- packages/matplotlib/backends/backend_tkagg.py", line 13, in <module>
import matplotlib.backends.tkagg as tkagg
File "/home/pi/.virtualenvs/cv/lib/python3.4/site- packages/matplotlib/backends/tkagg.py", line 9, in <module>
from matplotlib.backends import _tkagg
ImportError: cannot import name '_tkagg'
Проверьте свою базу данных. Если вы используете что-либо, кроме «TkAgg», Matplotlib не может открыть интерактивный график. Чтобы изменить исходный код, перед импортом pyplot следует импортировать matplotlib, matploblib.use ('TkAgg') '. –
@Alexander Huszagh' (резюме) пи @ raspberrypi: ~/Desktop $ питон tst2.py Traceback (самый последний вызов последнего): Файл "tst2.py", строка 1, в matplotlib.use ('TkAgg') ** NameError: имя 'matplotlib' не определено ** ' –
joe
Извините, это должно быть точка с запятой, а не запятая. В моем комментарии есть опечатка: 'import matplotlib; matplotlib.use ('TkAgg') ' Точка с запятой просто означает новое утверждение, вы можете заменить ее новой строкой. Вам нужно импортировать matplotlib, прежде чем вы обратитесь к нему. –