我使用pyinstaller创建了一个.exe文件。当我在Pycharm上运行它时,它运行得非常好。但是当我试图运行可执行文件时,出现了一个错误。
下面是完整的错误:
Traceback (most recent call last):
File "DT_070621.py", line 397, in <module>
File "DT_070621.py", line 315, in arquivos_saida
File "pandasplotting_core.py", line 892, in __call__
File "pandasplotting_core.py", line 1814, in _get_plot_backend
File "pandasplotting_core.py", line 1754, in _load_backend
ImportError: matplotlib is required for plotting when the default backend "matplotlib" is selected.
[11304] Failed to execute script 'DT_070621' due to unhandled exception!
但是当我检查matplotlib版本时,一切似乎都很好。
>>> import matplotlib
>>> matplotlib.__version__
'3.4.3'
我还检查了正在使用的后端:
>>> import matplotlib.pyplot as plt
>>> plt.get_backend()
'TkAgg'
我也试过创建.exe文件,像这样:
pyinstaller --hidden-import=openpyxl --hidden-import=matplotlib --onefile DT_070621.py
但这并没有解决我的问题。
我也检查了这个问题,但是它的描述似乎不完整,并且没有有用的答案来帮助我解决这个问题。
下面是我脚本中的导入:
import xml.etree.ElementTree as ET
from xml.etree import ElementTree
import pandas as pd
from shapely.geometry import Point, Polygon
import numpy as np
import matplotlib.pyplot as plt
import os
发生了什么事,我该如何解决?
添加--hidden-import pandas.plotting._matplotlib
解决了问题。