i'm getting the following error message, when trying to call a pyplot.show.
> QObject::moveToThread: Current thread (0x55cb11264ad0) is not the object's thread (0x55cb1226c700).
> Cannot move to target thread (0x55cb11264ad0)
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/lib/python3.8/site-packages/cv2/qt/plugins" even though it was found.
> This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
> Available platform plugins are: xcb, eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx.
> Aborted (core dumped)
Looking for answers I though it was the same problem as https://www.reddit.com/r/archlinux/comments/d6h3kl/python_qt_cant_import_matplotlibpyplot/ but i just reinstalled a lot of packages(And almost broke the entire system) and Im getting the same error.
And also, matplotlib.pyplot.show() and opencv.imshow() works fine when they are alone, but when i am doing some procesing with opencv and i want to show in pyplot.show() is where the error comes out.
I don't know how to debug Qt as the same as u/tim-hilt done in his post so this is all information that i can give for the moment. I figured out how to do it.
Thanks in advance for any response that i can get.
threadingcould resolve problem but usually GUIs don't like change widgets in different thread. Maybe convert plot to image and use onlyopencvto display it. OR create own GUI to display different object and have only one event loop i