Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 23.04.2019
Сообщений: 10

PyQtGraph, рисование графика в реальном времени, за счёт изменения параметра

21.07.2019, 11:07. Показов 3186. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Мне нужно, чтобы график менялся в зависимости, от того, что введено в spinBox. Как взять из спинбокса значение, поместить его в параметр "a" и заставить график измениться?


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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import pyqtgraph as pg
from PyQt5 import QtCore, QtGui, QtWidgets
import numpy as np
import graph
 
pg.setConfigOption('background', (240, 240, 240))
pg.setConfigOption('foreground', 'k')
 
pg.setConfigOptions(antialias=True)
 
 
class CustomPlot(pg.PlotWidget):
    def __init__(self):
        pg.PlotWidget.__init__(self)
        a = 1
        t = np.linspace(0, 2 * np.pi, num = 1000)
        self.x = a * np.sqrt(2) * np.cos(t) / (np.sin(t)**2 + 1)
        self.y = a * np.sqrt(2) * np.cos(t) * np.sin(t) / (np.sin(t)**2 + 1)
        self.plot(self.x, self.y, pen='k')
        self.showGrid(x=True, y=True)
 
 
class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
 
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 400)
 
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
 
        self.verticalLayout = QtWidgets.QHBoxLayout(self.centralwidget)
        self.verticalLayout.setObjectName("verticalLayout")
 
 
        self.graphicsView = CustomPlot()
        self.verticalLayout.addWidget(self.graphicsView)
 
        self.checkBox = QtWidgets.QCheckBox(self.centralwidget)
        self.checkBox.setObjectName("checkBox")
        self.verticalLayout.addWidget(self.checkBox)
 
        self.spinBox = QtWidgets.QSpinBox(self.centralwidget)
        self.spinBox.setObjectName("spinBox")
        self.verticalLayout.addWidget(self.spinBox)
        
        self.pushButton = QtWidgets.QPushButton(self.centralwidget)
        self.pushButton.setObjectName("pushButton")
        self.verticalLayout.addWidget(self.pushButton)
 
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setObjectName("label")
        self.verticalLayout.addWidget(self.label)
 
        self.label_2 = QtWidgets.QLabel(self.centralwidget)
        self.label_2.setObjectName("label_2")
        self.verticalLayout.addWidget(self.label_2)
 
        MainWindow.setCentralWidget(self.centralwidget)
        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
 
    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "График"))
        self.checkBox.setText(_translate("MainWindow", "Полярная система"))
        self.label.setText(_translate("MainWindow", "Formula1"))
        self.label_2.setText(_translate("MainWindow", "Formula2"))
        self.pushButton.setText(_translate("MainWindow", "Задать"))
 
 
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.07.2019, 11:07
Ответы с готовыми решениями:

Рисование графика в реальном времени
Добрый день! появился вопрос рисование графика в реальном времени. Нужно дорисоваывать график при поступлении новых данных. В интернете...

Рисование графика в реальном времени
Доброго времени суток! Есть такое задание Требуется составить программу демонстрирующую: Движение снаряда, который выпущен с начальной...

Отображение параметра на форме в реальном времени
Привет. Есть необходимость написать свой CastomControl. Разобрался как его организовать и добавил параметр, для теста. Создал привязку...

1
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,302
21.07.2019, 19:31
Читайте про слоты-сигналы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.07.2019, 19:31
Помогаю со студенческими работами здесь

Изменения страницы в реальном времени?
Добрый день. Допустим есть несколько пользователей, с возможность. что то менять на свое странице. Один пользователь открывает страницу...

Медиазапросы с js: изменения в реальном времени
Если создать обычный медиазапрос на css, то изменения видны при сужении экрана в реальном времени. А если через JS к примеру: var mql...

Изменения данных в шаблоне в реальном времени
Доброго времени суток. Я новичок в Django и это мой второй проект и связан он с автоматизацией питания. Я принимаю заказы с мобильного...

Делаю змейку и не понимаю как мне выводить счет (тоесть длину змейки) в реальном времени
Добрый вечер, новичок в C#. Делаю змейку и не понимаю как мне выводить счет (тоесть длину змейки) в реальном времени на экран через label....

Построение графика в реальном времени
Привет всем! Так называемый Бегущий график требуется построить :) В интернете поиск не дал ничего толкового. Суть заключается в том, что...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru