【问题标题】:After I convert my script to executable file, it gives this error : MatplotlibDeprecationWarning将脚本转换为可执行文件后,出现此错误: MatplotlibDeprecationWarning
【发布时间】:2020-11-04 15:35:24
【问题描述】:

我有一个错误,完整的表格是

MatplotlibDeprecationWarning:MATPLOTLIBDATA 环境变量在 Matplotlib 3.1 中已弃用,将在 3.3 中删除

我将我的脚本转换为可执行文件。转换后,它从未打开过。当我使用 IDE(VS Code、Linux shell 和 Spyder)执行脚本时,它可以工作。不知何故,我将其转换为exe后它无法打开。我写了一些行来避免这个错误,但它根本不起作用。例如; Python/matplotlib : getting rid of matplotlib.mpl warning

我使用 pyinstaller 和 auto-py-to-exe 将我的脚本转换为 exe。

这是我的代码的开头:

from PyQt5.QtWidgets import *
from PyQt5.QtCore import Qt, QDate, pyqtSlot
from PyQt5.QtGui import QIcon
from datetime import datetime
import calendar
import sys
import numpy as np 
import pandas as pd
from scipy.signal import find_peaks
import os
import matplotlib
import matplotlib.pyplot as plt
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas, NavigationToolbar2QT as NavigationToolbar
from matplotlib.figure import Figure
import matplotlib.dates as mdates
matplotlib.use('Qt5Agg')
myFmt = mdates.DateFormatter('%d')

把所有代码放在这里很长。非常感谢您的关注。

【问题讨论】:

    标签: python pyqt5 matplotlib-widget


    【解决方案1】:

    Arda,经过反复试验,我发现 pyinstaller 与最新版本的 matplotlib 存在冲突。为了使用 pyinstaller 生成脚本的可执行文件,您应该将 matplotlib 降级到 3.2.2 版本。我还发现 numpy 的最新 (1.19.4) 版本存在一些问题,当我将 numpy 降级到 1.19.3 时这些问题就消失了。

    你可以查看我的仓库 https://github.com/matiasleoni/COVID19_plotter 我创建了一个简单的脚本来使用 matplotlib 包绘制 COVID19 全局数据。经过多次失败的尝试后,我还能够创建它的可执行版本,如上所述(另请参阅该存储库的 README.md)。

    【讨论】:

    • 你好,马蒂亚斯。非常感谢。它有效,但仍然有控制台显示相同的错误,但至少它现在正在打开。
    • 转到我在回答中引用的存储库,在自述文件的末尾,您将找到有关如何消除这些错误/警告消息的说明。
    猜你喜欢
    • 2016-05-15
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-07
    • 2013-10-26
    • 2010-11-14
    相关资源
    最近更新 更多