2017-02-07 2 views
0

Я не могу импортировать Matplotlib на this глубоко обучения AMI от AWS рынкаImportError Tkinter при импорте Matplotlib

import matplotlib.pyplot as plt 

И я получаю эту ошибку

ImportError: No module named 'tkinter'

То, что я пытался (и ошибки возвращено):

pip install tkinter 
> No matching distribution found for TKinter 

sudo yum install tkinter 
> No package tkinter available. 
> Error: Nothing to do 
+0

Вы попробовали 'sudo yum install python-tkinter'? –

+0

yes, same error as '' 'sudo yum install tkinter''' –

+0

Вы используете python2 или python3? –

ответ

0

Первой находка Местонахождение matplotlibrc файла

import matplotlib matplotlib.matplotlib_fname()

u'/usr/local/lib64/python2.7/site-packages/matplotlib/mpl-data/matplotlibrc'

Затем перейдите в этот файл и изменить текущая конфигурация бэкэнд до backend : agg

Это не решает проблему импорта Tkinter, но она позволяет импорт pyplot

0

У меня лично были такие проблемы с tkinter, прежде чем rea lize требует «t» в python3 и «T» в python2. поэтому, когда мне нужна совместимость мои коды содержат:

import sys 
if sys.version_info[0]>2: 
    # for Python 3 
    import tkinter as tk 
else: 
    # for Python 2 
    import Tkinter as tk 

Я надеюсь, что эта помощь

0

Это работает для меня:

import matplotlib 
matplotlib.use('Agg') 
import matplotlib.pylab as plt 

Если бы та же проблема, после обновления до новой Matplotlib 2.x на Python 3.5.x

+0

Да, это в основном то, что я сделал. Кроме того, я просто установил это в файле matplotlibrc. Оформить мой ответ –

+0

Я думал, что это может быть удобнее, чем изменять файл. Кроме того, это решение, которое только изменяет бэкэнд внутри этого конкретного скрипта, не так ли? Насколько я понимаю ваше решение, это изменило бы глобальный сервер для всех сценариев, пока вы не измените файл matplotlib еще раз. –

+0

Да, если цель состояла в том, чтобы только изменить бэкэнд для этого скрипта, ваш ответ был бы лучшим. Тем не менее, я нашел, что мой ответ работал лучше всего для меня, потому что я сталкивался с этой ошибкой в ​​нескольких сценариях проекта. –