此问题已在此处有答案:
- [(基本上与几个月前相同:import matplotlib failing with No module named _tkinter on heroku。然而,提供的唯一解决方案似乎不起作用。(不幸的是,我不能对那里给出的答案发表评论,因为我没有足够的StackOverflow声誉。))]*
我一直在我的应用程序中使用matplotlib绘图。当地一切都很好。但是,当我把我的应用程序推到Heroku时,我得到了错误:
import _tkinter # If this fails your Python may not be configured for Tk
ImportError: No module named _tkinter
我尝试通过以下方式绕过Tkinter:
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt, mpld3
但是,这仍然会抛出相同的错误。
有人找到了这个解决方案吗?或者有一个带matplotlib的Heroku应用程序可以正常工作吗?我正在运行Python 2。7.13(这也是Heroku在推送应用程序时安装的版本)。
2条答案
按热度按时间daupos2t1#
对我来说,这是可行的:
将matplotlib后端从tkinter更改为其他内容。在程序的开头执行以下操作:
这样,程序的其余部分将使用您设置的后端('Agg','SVG',等等)
另一个选择是尝试和混乱的matplotlibrc文件每: www.example.com
i2byvkas2#
我联系了Heroku支持,得到了以下答案:
“* 默认的Heroku Python版本不包含成功导入tkinter所需的库。您可以在这里找到我们默认提供的基础库列表:https://devcenter.heroku.com/articles/cedar-ubuntu-packages*
我安装了以下buildpack:https://github.com/thenovices/heroku-buildpack-scipy .它解决了matplotlib的问题。