我的标签和标题清楚地说明了我的问题.我想使用matplotlib在Google App Engine中创建实时图.我已阅读文档并在SO和Google上搜索过.我找到了一个帖子,指着这个工作演示.但是当我自己尝试时,它对我不起作用.
我创建了一个简单的应用程序,仅包含一个处理程序脚本hello_world.py
import numpy as np
import os
import sys
import cStringIO
print "Content-type: image/png\n"
os.environ["MATPLOTLIBDATA"] = os.getcwdu() # own matplotlib data
os.environ["MPLCONFIGDIR"] = os.getcwdu() # own matplotlibrc
import matplotlib.pyplot as plt
plt.plot(np.random.random((20))) #imshow(np.random.randint((10,10)))
sio = cStringIO.StringIO()
plt.savefig(sio, format="png")
sys.stdout.write(sio.getvalue())
Run Code Online (Sandbox Code Playgroud)
和配置文件app.yaml
application: helloworldtak
version: 1
runtime: python27
api_version: 1
threadsafe: no
handlers:
- url: /.*
script: hello_world.py
libraries:
- name: numpy
version: "latest"
- name: matplotlib
version: "latest"
Run Code Online (Sandbox Code Playgroud)
我想绘制一些内容,然后将内容作为png-image返回.这个程序适用于像Apache或IIS这样的普通Web服务器,我这样做了一百万次.
问题是:当我在开发服务器中本地运行我的脚本时,我得到的错误可能是由于我的MPL版本1.1.1,这只是GAE中的"实验性".但是,当我将我的应用程序部署到GAE时,我得到一个完全不同的,不相关的错误.
看看外观,追溯是:
Traceback …Run Code Online (Sandbox Code Playgroud)