I hacked around this limitation by including matplotlib data and rc file into the app plus a couple minor tweaks, here's the demo: gae-matplotlib-demo.appspot.com
On Saturday, December 29, 2012 5:21:57 AM UTC+1, Brian Quinlan wrote: > > From the documentation > (https://developers.google.com/appengine/docs/python/tools/libraries27): > > "Note: The experimental release of matplotlib is not supported on the > development server. You can still add matplotlib to the libraries > list, but it will raise an exception when imported." > > Cheers, > Brian > > On Sat, Dec 29, 2012 at 7:30 AM, Xin Meng <[email protected]<javascript:>> > wrote: > > > > Hi guys, > > > > I was testing out the new GAE sdk 1.7.4 python version with the > matplotlib > > support, and I have encountered the following error: > > > > WARNING 2012-12-28 20:27:55,009 py_zipimport.py:139] Can't open zipfile > > D:\Python27\lib\site-packages\python_memcached-1.48-py2.7.egg: IOError: > > [Errno 13] file not accessible: > > 'D:\\Python27\\lib\\site-packages\\python_memcached-1.48-py2.7.egg' > > WARNING 2012-12-28 20:27:55,025 py_zipimport.py:139] Can't open zipfile > > D:\Python27\lib\site-packages\setuptools-0.6c12dev_r88846-py2.7.egg: > > IOError: [Errno 13] file not accessible: > > > 'D:\\Python27\\lib\\site-packages\\setuptools-0.6c12dev_r88846-py2.7.egg' > > WARNING 2012-12-28 20:27:55,976 dev_appserver_import_hook.py:557] > Blocking > > access to skipped file "d:\nus\quality control sms > > system\webapp5\.matplotlibrc" > > WARNING 2012-12-28 20:27:55,976 dev_appserver_import_hook.py:557] > Blocking > > access to skipped file "d:\nus\quality control sms > > system\webapp5\~\.matplotlibrc" > > WARNING 2012-12-28 20:27:55,976 dev_appserver_import_hook.py:557] > Blocking > > access to skipped file "d:\nus\quality control sms > > system\webapp5\~\.matplotlib" > > ERROR 2012-12-28 20:27:55,976 wsgi.py:219] > > Traceback (most recent call last): > > File "E:\Program > > Files\Google\google_appengine\google\appengine\runtime\wsgi.py", line > 196, > > in Handle > > handler = _config_handle.add_wsgi_middleware(self._LoadHandler()) > > File "E:\Program > > Files\Google\google_appengine\google\appengine\runtime\wsgi.py", line > 255, > > in _LoadHandler > > handler = __import__(path[0]) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1766, in load_module > > return self.FindAndLoadModule(submodule, fullname, search_path) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1630, in FindAndLoadModule > > description) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1577, in LoadModuleRestricted > > description) > > File "D:\NUS\Quality Control SMS System\Webapp5\main.py", line 15, in > > <module> > > import Qualitics_Logic > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1766, in load_module > > return self.FindAndLoadModule(submodule, fullname, search_path) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1630, in FindAndLoadModule > > description) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1577, in LoadModuleRestricted > > description) > > File "D:\NUS\Quality Control SMS System\Webapp5\Qualitics_Logic.py", > line > > 4, in <module> > > import matplotlib.mlab as mlab > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1766, in load_module > > return self.FindAndLoadModule(submodule, fullname, search_path) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1630, in FindAndLoadModule > > description) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 692, in Decorate > > return func(self, *args, **kwargs) > > File "E:\Program > > > Files\Google\google_appengine\google\appengine\tools\dev_appserver_import_hook.py", > > > > line 1577, in LoadModuleRestricted > > description) > > File "D:\Python27\lib\site-packages\matplotlib\__init__.py", line 772, > in > > <module> > > rcParams = rc_params() > > File "D:\Python27\lib\site-packages\matplotlib\__init__.py", line 690, > in > > rc_params > > fname = matplotlib_fname() > > File "D:\Python27\lib\site-packages\matplotlib\__init__.py", line 602, > in > > matplotlib_fname > > fname = os.path.join(get_configdir(), 'matplotlibrc') > > File "D:\Python27\lib\site-packages\matplotlib\__init__.py", line 253, > in > > wrapper > > ret = func(*args, **kwargs) > > File "D:\Python27\lib\site-packages\matplotlib\__init__.py", line 480, > in > > _get_configdir > > os.mkdir(p) > > AttributeError: 'module' object has no attribute 'mkdir' > > INFO 2012-12-28 20:27:55,993 dev_appserver.py:3103] "GET / HTTP/1.1" > 500 > > - > > INFO 2012-12-28 20:27:56,055 dev_appserver.py:3103] "GET > /favicon.ico > > HTTP/1.1" 304 - > > > > I have no idea how this happened. I have tried to import the matplotlib > in > > normal python environment and it worked OK. It somehow doesn't get along > > with GAE :s > > > > Any thoughts? > > > > Thx > > > > -- > > You received this message because you are subscribed to the Google > Groups > > "Google App Engine" group. > > To view this discussion on the web visit > > https://groups.google.com/d/msg/google-appengine/-/hVjbQnyYfxgJ. > > To post to this group, send email to > > [email protected]<javascript:>. > > > To unsubscribe from this group, send email to > > [email protected] <javascript:>. > > For more options, visit this group at > > http://groups.google.com/group/google-appengine?hl=en. > -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To view this discussion on the web visit https://groups.google.com/d/msg/google-appengine/-/3vZGgv7ppcgJ. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
