Форум программистов, компьютерный форум, киберфорум
Наши страницы
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
kkkostya
0 / 0 / 0
Регистрация: 25.02.2015
Сообщений: 9
1

Вывести график matplotlib в QWidget

09.04.2017, 15:02. Просмотров 718. Ответов 1

Подскажите пожалуйста как вывести график который строится с помощью библиотеки matplotlib не в её контейнер "plot" а в QWidget либо в QGraphicsView на пользовательской форме.
библиотека позволяет рисовать plt.plot(x, y, '-', color='blue', linewidth=1), но как рисовать график в пользовательской форме?

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
from __future__ import unicode_literals
import sys
import os
import random
from PyQt4 import QtCore, QtGui
from numpy import arange, sin, pi
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.figure import Figure
import matplotlib.pyplot as plt
 
x = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]
y = [44,556,53,345,34,45,44,22,435,1,232,343,345,67,11,42,23,43]
print(x, '\n')
print(y, '\n')
#---------------------------------------
# Первая область рисования
plt.plot(x, y, '-', color='blue', linewidth=1)
#---------------------------------------
        
# Рисуем пользовательскую форму------------------------
try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    def _fromUtf8(s):
        return s
 
try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig)
 
class Ui_Form(object):
    def setupUi(self, Form):
        Form.setObjectName(_fromUtf8("Form"))
        Form.resize(774, 418)
        self.pushButton = QtGui.QPushButton(Form)
        self.pushButton.setGeometry(QtCore.QRect(660, 280, 75, 23))
        self.pushButton.setObjectName(_fromUtf8("pushButton"))
        self.my_widget = QtGui.QWidget(Form)
        self.my_widget.setGeometry(QtCore.QRect(20, 10, 741, 241))
        self.my_widget.setObjectName(_fromUtf8("my_widget"))
 
        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)
 
    def retranslateUi(self, Form):
        Form.setWindowTitle(_translate("Form", "Form", None))
        self.pushButton.setText(_translate("Form", "PushButton", None))
# Рисуем пользовательскую форму------------------------
 
plt.show()#это рисует matplotlib график
 
app = QtGui.QApplication(sys.argv)
window = QtGui.QWidget()
ui = Ui_Form()
ui.setupUi(window)
QtCore.QObject.connect(ui.pushButton, QtCore.SIGNAL("clicked()"), QtGui.qApp.quit)
window.show()
sys.exit(app.exec_())
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2017, 15:02
Ответы с готовыми решениями:

Обновляющийся график matplotlib в отдельном окне
Привет всем! Написал код, чтобы график matplotlib строился в оконном приложении...

Как открыть QWidget из QWidget по нажатию кнопки
Здравствуйте! Подскажите как открыть по нажатию QPushButton еще один QWidget в...

Python matplotlib отобразить график функции в заданной точке собственной формы
Язык Python.Есть график функции. Не важно какой. Например такой 3D график. При...

Matplotlib
Пробую научиться пользоваться данной библиотекой для построения графиков,...

Анимация в matplotlib
Доброго времени суток. Имеется код, прорисовывающий окружность и линию: ...

1
dondublon
2146 / 1064 / 213
Регистрация: 17.03.2012
Сообщений: 6,417
Записей в блоге: 5
10.04.2017, 10:39 2
Цитата Сообщение от kkkostya Посмотреть сообщение
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
А эту строку вы откуда взяли?
Там и должен быть ответ на ваш вопрос.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2017, 10:39

Гистограмма matplotlib
привет. нигде не найду русскую доку мо данной библиотеке. есть у меня...

Не устанавливается matplotlib
Прерывается установка на Питон модуля matplotlib с ошибкой код 1 (скрин и...

Установка matplotlib
Всем здравствуйте, пытаюсь установить библиотеку matplotlib, но выдает такую...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru