Hello Tom, I encountered the same problem recently. The toolbar icons are a mix of png and svg images. The png images are displayed properly while the svg icons are not shown. This is a problem with PyQt. I found a proposal on the web, where you should add the line
import PyQt4.QtXml somewhere to your code. This is because xml support is needed to read svg files. However, this did not work for me. Instead I now use a rather ugly workaround: I rename the original *.png icon files to *.svg for those icons that are expected to be svg files. Qt will then find an svg file but it's clever enough to load it as png. Save those modified files somewhere as resources. Add them to the data_files list in your setup script and they will overwrite the original files at every build so you don't have to care any more. You can find out which files have to be renamed by looking into PACKAGEPATH/matplotlib/backends/backend_qt4.py line 399 and below. Another approach would be to directly rename the files in NavigationToolbar2QT._init_toolbar() to *.png since matplotlib provides png and svg files for every icon. Greetings, Sebastian Am 06.02.2011 11:20, schrieb Tom van der Hoeven: > Hello, > > I have a simple program > ---------------graf.py-------------- > > import matplotlib.pyplot as plt > plt.plot([1,2,3,8,0,9,1,10,5]) > plt.ylabel('some numbers') > plt.show() > -------------------------------------------------- > If I look to a matplotlib figures on my screen using the exe made with > py2exe I mis all the buttons but one of the navigation bar. > If I work direct with the Python interpreted they are there. > I use the current version of Pythonxy > > ------------ setup.py -------------- > from distutils.core import setup > import py2exe > import matplotlib > > name = 'graf.py' > INCLUDES = [ 'sip' , 'matplotlib.numerix.random_array' > # , 'PyQt4._qt' > , 'matplotlib.backends' > , > 'matplotlib.backends.backend_qt4agg'] > #['matplotlib.backends.backend_qt4agg'] > EXCLUDES = [] > [ '_gtkagg' , '_tkagg' , 'Tkconstants' , 'Tkinter' ,'tcl' ] > #['_tkagg' , '_ps' , '_fltkagg' , 'Tkinter' , 'Tkconstants' , '_cairo' , > '_gtk' , 'gtkcairo' , > # 'pydoc' , 'sqlite3' , 'bsddb' , 'curses' , 'tcl' , > '_wxagg' , '_gtagg' , '_cocoaagg' , '_wx' ] > DLL_EXCLUDES = ['MSVCP90.dll'] > ICON_RESOURSES = [] > OTHER_RESOURCES = [] > DATA_FILES = matplotlib.get_py2exe_datafiles() > > setup(name = name, > version = '1.0', > options = { "py2exe" : { 'compressed' : 1, > 'optimize' : 2, > 'bundle_files' : 2, > 'includes' : INCLUDES, > 'excludes' : EXCLUDES, > 'dll_excludes' : DLL_EXCLUDES } > } , > console = [ { 'script' : name, > 'icon_resources' : ICON_RESOURSES, > 'other_resources' : OTHER_RESOURCES, } ] , > description = 'Hele mooie', > author = 'Tom van der Hoeven', > author_email = 't...@vanderhoeven.biz' , > maintainer = 'Tom van der Hoeven', > maintainer_email = 't...@vanderhoeven.biz', > license = '', > url = 'http://projecthomepage.com', > data_files = DATA_FILES, > ) > ------------------------- > can you help me > > Tom > > ------------------------------------------------------------------------------ > The modern datacenter depends on network connectivity to access resources > and provide services. The best practices for maximizing a physical server's > connectivity to a physical network are well understood - see how these > rules translate into the virtual world? > http://p.sf.net/sfu/oracle-sfdevnlfb > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users