У меня строятся данные, и мне нужно отобразить его преобразование Фурье в реальном времени. Щелчок правой кнопкой мыши по сюжету и переход через меню «Параметры графика» позволяют мне выбрать режим «Спектр мощности», но есть ли способ активировать этот режим, когда виджет участка создается в первую очередь? Мне нужно преобразовать Фурье, чтобы он отображался без необходимости просмотра интерактивных меню. Спасибо за вашу помощь.Как установить виджет графика в режим Power Spectrum в PyQtGraph?
ответ
Похоже, это было там какое-то время, но так как это то, что другие могут в конечном итоге извлечь выгоду из, я добавлю свои 2 цента:
Самый простой способ я нашел, чтобы выполнить это с программным ударяя флажок сразу после создания сюжета. Созданный PlotItem имеет меню self.ctrl, так что:
pitem.ctrl.fftCheck.setChecked(True)
должен сделать трюк.
pitem - это ссылка, возвращаемая методом addPlot GraphicsLayout. Если вы посмотрите на Plotting.py в обеспеченных их примерах, «https://github.com/pyqtgraph/pyqtgraph/blob/develop/examples/Plotting.py» линии 58:
p6 = win.addPlot(title="Updating plot")
p6 в этом случае является PlotItem, поэтому, добавив следующую строку в этом случае:
p6.ctrl.fftCheck.setChecked(True)
сделал бы это.
Для второго способа выполнить, также отметить, следующая строка в примере (строка 59):
curve = p6.plot(pen='y')
Можно выполнить режим БПФ с помощью ссылки PlotDataItem вернулся туда через:
curve.setFftMode(True)
Но это фактически оставляет галочку в меню без отметки и может быть немного запутанной.
Однако третий путь на линии 64:
curve.setData(data[ptr%10])
который стал бы:
curve.setData(data[ptr%10],fftMode=True)
Это все взаимоисключающими, поэтому выполнение любой должен работать, но с последними 2-х вариантов его оставляет галочку в меню без отметки, так что снова вариант 1 - ваш лучший выбор.
Просто добавьте этот первый предоставленный параметр, если вы используете класс PlotWidget вместо PlotItem (если вы, как и я, используете QtDesigner в сочетании с Pyqtgraph для создания вашего графического интерфейса), это также можно сделать, вы просто нужно добавить getPlotItem() для доступа к атрибуту ctrl.
Например, если мой пункт сюжет называется self.ui4.plot_1
(plot_1 это метка или название, установленное в QtDesigner для сюжета PlotWidget), вы должны написать:
self.ui4.plot_1.getPlotItem().ctrl.fftCheck.setChecked(True)
- 1. Matlab Power Spectrum Plot
- 2. временная компоновка графика в pyqtgraph
- 3. Реализация pyqtgraph многопроцессорности в виджет pyqt
- 4. Вставка pyqtgraph в виджет вкладки Pyqt
- 5. Неверное отображение графика PyQtGraph на Qt MainWindow
- 6. Ручка-виджет (или альтернатива) в PyQtGraph
- 7. PyQtGraph: как уловить изменения диапазона графика?
- 8. PyQtGraph - Как установить интервалы оси
- 9. Как очистить ScatterPlotItem в PYQTGRAPH
- 10. pyqtgraph: Несколько цветов в PyQtGraph
- 11. pyqtgraph в режиме реального времени обновления графика не показывая
- 12. pyqtgraph экспорт из API в виджет PyQt4 сбой/сбой python
- 13. Экспорт изображения виджета в pyqtgraph
- 14. Построение больших массивов в pyqtgraph
- 15. Python - Добавление графика Tkinter в виджет PyQt
- 16. Как можно включить сглаживание в pyqtgraph ImageView?
- 17. Поле в PyQtGraph в GraphicsLayout
- 18. Как использовать sigPointsClicked в pyqtgraph
- 19. Как закрыть окна в pyqtgraph
- 20. pyqtgraph: как перетащить в plotItems
- 21. Как сделать простой Spectrum в java
- 22. Поворот только графика в альбомный режим
- 23. Как отключить режим графика в режиме сборки в IDA 6.1?
- 24. Как увеличить масштаб изображения в pyqtgraph
- 25. LinearRegionItem в Pyqtgraph
- 26. Нет значений в pyqtgraph
- 27. Как установить виджет datepicker в ipywidgets?
- 28. Как установить параметры в виджет jQuery
- 29. Как установить виджет в эмуляторе Android NOX?
- 30. Как установить RecyclerView в андроид виджет
Я хотел бы отметить, что этот вариант очень ограниченный, если вы не решите подкласс PlotDataItem повторно выполнить свой БПФ. В большинстве случаев вам лучше использовать numpy для выполнения FFT до графика и просто используя pyqtgraph для построения ответа. – segFaultCoder