Pyside2 和 Matplotlib 的 Pyinstaller 不工作
Pyinstaller with Pyside2 and Matplotlib is not working
我无法通过使用 Pyinstaller、Pyside2 和 Matplotlib(PyQtGraph) 获得任何可执行文件。
我尝试了不同的 Python 版本(3.5、3.6、3.7)Pyinstaller 的最新发布和开发版本、最新的 Pyside2 和最新的 Matplotlib 版本。我最近的 "success" 是在 python 3.5、pyside2 上为 Matplotlib(3.0.2) 或 PyQtGraph(development 0.11) 创建一个 exe 文件(dir 或 onefile 不会改变结果) (5.12.0),但当我尝试启动时出现以下错误:
ImportError: 没有名为 'numpy.core._dtype_ctypes' 的模块
[11856] 无法执行脚本 Pyside2PyQTGraph
当我只做一个仅带有标签的 Pyside2 示例时,一切都按预期工作。我也试过 --hidden-imports numpy 但它没有帮助。我当然可以分享源代码。此外,我更喜欢使用 Matplotlib,但 PyQtGraph 也可以。
我还有什么可以尝试的?我究竟做错了什么?顺便说一句,我正在使用 Windows 10.
from PySide2.QtWidgets import QWidget, QApplication,QVBoxLayout
import sys
from matplotlib.backends.backend_qt5agg import FigureCanvas as Canvas
from matplotlib.figure import Figure
from matplotlib import rcParams
class MatplotlibWidget(QWidget):
def __init__(self):
QWidget.__init__(self)
self.canvas = Canvas(Figure())
vertLayout = QVBoxLayout()
vertLayout.addWidget(self.canvas)
self.setLayout(vertLayout)
self.axes = self.canvas.figure.add_subplot(111)
if __name__ == "__main__":
qapp = QApplication(sys.argv)
app = MatplotlibWidget()
app.axes.plot(range(12), range(12))
app.show()
qapp.exec_()
当前的 numpy 版本 (1.16.0) 似乎有问题。通过
降级 numpy
python -m pip install numpy==1.15.0
帮我解决了。
我无法通过使用 Pyinstaller、Pyside2 和 Matplotlib(PyQtGraph) 获得任何可执行文件。
我尝试了不同的 Python 版本(3.5、3.6、3.7)Pyinstaller 的最新发布和开发版本、最新的 Pyside2 和最新的 Matplotlib 版本。我最近的 "success" 是在 python 3.5、pyside2 上为 Matplotlib(3.0.2) 或 PyQtGraph(development 0.11) 创建一个 exe 文件(dir 或 onefile 不会改变结果) (5.12.0),但当我尝试启动时出现以下错误:
ImportError: 没有名为 'numpy.core._dtype_ctypes' 的模块 [11856] 无法执行脚本 Pyside2PyQTGraph
当我只做一个仅带有标签的 Pyside2 示例时,一切都按预期工作。我也试过 --hidden-imports numpy 但它没有帮助。我当然可以分享源代码。此外,我更喜欢使用 Matplotlib,但 PyQtGraph 也可以。
我还有什么可以尝试的?我究竟做错了什么?顺便说一句,我正在使用 Windows 10.
from PySide2.QtWidgets import QWidget, QApplication,QVBoxLayout
import sys
from matplotlib.backends.backend_qt5agg import FigureCanvas as Canvas
from matplotlib.figure import Figure
from matplotlib import rcParams
class MatplotlibWidget(QWidget):
def __init__(self):
QWidget.__init__(self)
self.canvas = Canvas(Figure())
vertLayout = QVBoxLayout()
vertLayout.addWidget(self.canvas)
self.setLayout(vertLayout)
self.axes = self.canvas.figure.add_subplot(111)
if __name__ == "__main__":
qapp = QApplication(sys.argv)
app = MatplotlibWidget()
app.axes.plot(range(12), range(12))
app.show()
qapp.exec_()
当前的 numpy 版本 (1.16.0) 似乎有问题。通过
降级 numpypython -m pip install numpy==1.15.0
帮我解决了。