我没有使用Pyinstaller,Pyside2和Matplotlib(PyQtGraph)来运行任何可执行文件。
我尝试了不同的Python版本(3.5、3.6、3.7),最新版本和Pyinstaller开发版本,最新Pyside2和最新Matplotlib版本。我拥有的最新“成功”是在python 3.5,pyside2(5.12.0)上为Matplotlib(3.0.2)或PyQtGraph(development 0.11)创建一个exe文件(dir或onefile不会更改结果),但是当我尝试启动时会发生以下错误:
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_()
答案 0 :(得分:0)
当前的numpy版本(1.16.0)似乎有问题。通过
降级numpy python -m pip install numpy==1.15.0
为我解决了。