Я написал функцию построения графика с помощью pyqtgraph и opengl
По какой-то причине, когда я запускаю функцию построения графика с удаленного компьютера (я получаю доступ к удаленному компьютеру с моего компьютера, используя "s sh -X. .. ")" пустой "график - это не черный фон, а дубликат того фона, который находился за экраном при его открытии. Когда я пытаюсь загрузить данные, плоттер также не отображает данные, хотя я успешно загружаю данные в функцию. Вероятно, проще всего объяснить мою проблему с помощью изображения (см. Ниже).
Когда я запускаю функцию построения графика на моем локальном компьютере, у меня нет этой проблемы (как удаленный, так и локальный компьютер используют python 3.3. 7 и conda для управления пакетами, и я удостоверился, что все пакеты обновлены на моем удаленном и локальном компьютере. Мой локальный компьютер работает на ubuntu, а удаленный - на redhat; хотя я не уверен, что это релевантная информация).
Соответствующие фрагменты кода могут быть
import pyqtgraph.opengl as gl
## init plotWindow
self.plotWindow = gl.GLViewWidget(self)
## load data, init widgets, etc.
## plot data (loaded elsewhere; let's assume I loaded data to "vals" properly)
def plot_data(self,vals):
self.plots.append(gl.GLSurfacePlotItem(
x= np.linspace(-2.5,2.5,vals[0].shape[0]),
y= np.linspace(-2.5,2.5,vals[0].shape[1]),
shader='heightColor',
computeNormals=False,
smooth=False
)
)
self.plots[-1].setData(z=vals[0])
self.plotWindow.addItem(self.plots[-1])