@andriy_vityk
Студент, инженер-акустик, программист.

Как подружить PyQt и matplotlib?

Здравствуйте!
Сам никак не могу разобраться, только недавно начал программировать.
Мне нужно в GUI - приложении вывести график, созданный в matplotlib.pyplot.pcolormesh, а также несколько графиков с matplotlib.pyplot.plot и matplotlib.pyplot.polar (для визуализации акустического поля). Графики в одном окне на разных виджетах.
Пробовал использовать QGraphicsView/QGraphicsScene, но не понял как добавить QuadMesh как QGraphicsItem, пробовал FigureCanvasQTAgg из matplotlib.backends.backend_qt4agg прикрепить в QWidget, но как-то безуспешно.
Вот часть кода. Не могу понять, как объект QuadMesh поместить внутрь. Через plt.show() работает, но в новом окне.
self.fld_frame = QtGui.QWidget()
fplt = self.fld.fieldplt()  # возвращает QuadMesh
self.fig = Figure()
self.fig.canvas = FigureCanvas(self.fig)
self.fig.canvas.setParent(self.ac_field)  # ac_field - объект QGraphicsView
self.fig.canvas.draw()
  • Вопрос задан
  • 7389 просмотров
Решения вопроса 1
mFoxRU
@mFoxRU
Примерно год назад, довольно долго промучившись с интеграцией matplotlib в PyQt-приложение, открыл для себя замечательную библиотеку PyQtGraph. Из плюсов могу отметить более удобную интеграцию в приложение и, что для меня было важно, скорость работы при отображении динамических данных.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы