Не могу импортировать matplotlib - PullRequest
1 голос
/ 14 июня 2010

Я установил matplotlib, используя установщик образа диска Mac для MacOS 10.5 и Python 2.5. Я установил numpy, затем попытался импортировать matplotlib, но получил эту ошибку: ImportError: numpy 1.1 or later is required; you have 2.0.0.dev8462. Кажется, что версия 2.0.0.dev8462 будет позже, чем версия 1.1, но я предполагаю, что matplotlib перепутали с «.dev8462» в версии. Есть ли обходной путь к этому?

Ответы [ 2 ]

1 голос
/ 14 июня 2010

Вот проблемный код, расположенный в Lib/site-packages/matplotlib/__init__.py в моем дистрибутиве Python для Windows

nn = numpy.__version__.split('.')
if not (int(nn[0]) >= 1 and int(nn[1]) >= 1):
    raise ImportError(
            'numpy 1.1 or later is required; you have %s' % numpy.__version__)

Проблема в том, что требуется, чтобы обе первые цифры (разделенные точками) были больше илиравен 1, а в вашем случае вторая цифра - 2. Вы можете обойти это несколькими способами, но один из способов - изменить оператор if на

if not ((int(nn[0]) >= 1 and int(nn[1]) >= 1) or int(nn[0]) >= 2):

, или вы можете просто изменить его.до:

if not (float('.'.join(nn[2:])) >= 1.1):

что может быть лучше.

0 голосов
/ 08 мая 2011

После комментария Джастина ... вот эквивалентный файл для Linux:

/usr/lib/pymodules/python2.6/matplotlib/__init__.py

sudo edit, чтобы исправить эту проблемную строку в: если нет ((int (nn [0])> = 1 и int (nn [1])> = 1) или int (nn [0])> = 2):

Спасибо, Джастин Пил!

...