Объект «NoneType» не имеет атрибута «removeItem».Python

Программы на Python
Anonymous
Объект «NoneType» не имеет атрибута «removeItem».

Сообщение Anonymous »

Я хочу установить axisItems в PlotItem с помощью pyqtgraph. При выполнении кода возникла ошибка.
Вот мой код:
import numpy as np
import pyqtgraph as pg

app = pg.mkQApp("app")

x = np.linspace(0, 10, 1000)
y = np.sin(x)

plot_item = pg.PlotItem()
plot_item.setAxisItems(axisItems={'bottom':pg.AxisItem('bottom')}) # error occurs here

plot_item.plot(x, y)
plot_item.setTitle("Sine Wave Plot")
plot_item.setLabel("left", "Amplitude", units="V")
plot_item.setLabel("bottom", "Time", units="s")
plot_item.showGrid(True, True)

win = pg.GraphicsLayoutWidget()
win.setWindowTitle("PlotItem Example")
win.resize(800, 600)
win.addItem(plot_item)
win.show()

app.exec()


Когда я запускаю этот код, он показывает следующую ошибку:
Traceback (most recent call last):
File "E:\Workspace\Python\VNPY-master\examples\candle_chart\tick\item\main.py", line 42, in
plotItem.setAxisItems(axisItems={'bottom':pg.AxisItem('bottom')})
File "E:\home\.conda\envs\Python310\lib\site-packages\pyqtgraph\graphicsItems\PlotItem\PlotItem.py", line 312, in setAxisItems
oldAxis.scene().removeItem(oldAxis)
AttributeError: 'NoneType' object has no attribute 'removeItem'

Я попытался установить ось при инициализации PlotItem, это удалось. но как установить оси после инициализации PlotItem?
import pyqtgraph as pg
import numpy as np

app = pg.mkQApp("app")

x = np.linspace(0, 10, 1000)
y = np.sin(x)

plot_item = pg.PlotItem(axisItems={'bottom':pg.AxisItem('bottom')}) #run successfully

plot_item.plot(x, y)
plot_item.setTitle("Sine Wave Plot")
plot_item.setLabel("left", "Amplitude", units="V")
plot_item.setLabel("bottom", "Time", units="s")
plot_item.showGrid(True, True)

win = pg.GraphicsLayoutWidget()
win.setWindowTitle("PlotItem Example")
win.resize(800, 600)
win.addItem(plot_item)
win.show()

app.exec()


Подробнее здесь: https://stackoverflow.com/questions/782 ... removeitem

Вернуться в «Python»