2011-02-17 32 views
4

我目前正在研究一個應用程序,該應用程序使用py2exe從使用matplotlib的Python代碼中創建一個exe文件。除了我的可執行文件很大,它工作得很好。運行下面的轉換腳本將創建43.5 mb包(exe及其依賴項)。我知道可能會有一些事情可以縮減我的應用程序的大小。在飲食上放置py2exe和matplotlib

減少我的應用程序大小的任何提示?

我的轉換腳本:

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

見http://stackoverflow.com/questions/3528763/py2exe-reduce-size-of-the-library-archive – 2011-02-17 14:47:18

回答

6

如果您使用matplotlib只使用默認字體等,你可以展示一些圖表只需在dist/mpl-data文件夾中刪除除matplotlib.conf和matplotlibrc以外的所有文件夾。

我做到了這一點,並保存在12MB abot 4MB。

爲什麼你DIST是43.5MB可能不是所有因matplotlib ...