把py2exe和matplotlib“减肥”

4

我目前正在开发一个应用程序,使用py2exe将一些利用matplotlib的Python代码制作成exe文件。它的运行效果很好,但我的可执行文件非常大。运行以下转换脚本,它会创建一个43.5 mb的包(exe及其依赖项)。我知道可能有一些方法可以缩小我的应用程序。

有没有什么建议可以缩小我的应用程序?

我的转换脚本:

from distutils.core import setup
import py2exe
import matplotlib

setup(


windows=[{'script': r'ElectronOrbitalGenerator.py'}],

data_files=matplotlib.get_py2exe_datafiles(),

options={r'py2exe':{r'includes': r'ElementConfig',
                    r'includes': r'ColorConv',
                    r'includes': r'Tkinter',
                    r'includes': r're',
                    r'includes': r'math',
                    r'includes': r'sys',
                    r'includes': r'matplotlib',
                    r'includes': r'mpl_toolkits',
                    r'dll_excludes': [r'MSVCP90.dll'],
                    }},


)

这些是我程序运行所需的所有模块:

import ElementConfig, ColorConv

import Tkinter, re, math, sys

import matplotlib.pyplot as plt

from mpl_toolkits.mplot3d import  Axes3D
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
from matplotlib.figure import Figure

1
请转到 https://dev59.com/Yk_Ta4cB1Zd3GeqPE-k5。 - fn.
1个回答

6
如果您只是使用matplotlib来显示一些使用默认字体等的图表,那么您可以删除dist/mpl-data文件夹中除了matplotlib.conf和matplotlibrc之外的所有内容。
我这样做后,在12MB中节省了约4MB。
为什么您的分发大小为43.5MB可能不完全是由于matplotlib造成的...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接