From fbb65a34fe6236f8ee8c67a70036e290a9a1646b Mon Sep 17 00:00:00 2001 From: Adrian Insaurralde Avalos Date: Thu, 4 Dec 2025 20:37:03 -0300 Subject: [PATCH] Plot: protect matplotlib.pyplot import form PyQt6 too and remove lingering debug print --- src/Mod/Plot/Plot.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/Mod/Plot/Plot.py b/src/Mod/Plot/Plot.py index 5151c44ed0..25761793e7 100644 --- a/src/Mod/Plot/Plot.py +++ b/src/Mod/Plot/Plot.py @@ -33,13 +33,22 @@ try: matplotlib.use("QtAgg") # Force matplotlib to use PySide backend by temporarily unloading PyQt + pyqt5_unloaded = False + pyqt6_unloaded = False if "PyQt5.QtCore" in sys.modules: del sys.modules["PyQt5.QtCore"] - import matplotlib.pyplot as plt + pyqt5_unloaded = True + if "PyQt6.QtCore" in sys.modules: + del sys.modules["PyQt6.QtCore"] + pyqt6_unloaded = True + + import matplotlib.pyplot as plt + + # restore PyQt if unloaded + if pyqt5_unloaded: import PyQt5.QtCore - else: - print("default matplotlib import") - import matplotlib.pyplot as plt + if pyqt6_unloaded: + import PyQt6.QtCore from matplotlib.backends.backend_qtagg import FigureCanvasQTAgg as FigureCanvas from matplotlib.backends.backend_qtagg import NavigationToolbar2QT as NavigationToolbar