Не удается импортировать FigureCanvasWxAgg из Matplotlib в Python

#python #wxpython #matplotlib #pydev

#python #wxpython #matplotlib #pydev

Вопрос:

Я использую Python x64 со всем установленным, но я получаю неразрешенный импорт в FigureCanvasWxAgg. Я могу перейти к matplotlib.backends.backend_wxagg, но нет FigureCanvasWxAgg для импорта оттуда.

Я тоже пробовал from matplotlib.backends.backend_wxagg import * , но это тоже не работает.

РЕДАКТИРОВАТЬ: Проблема решена. Я взглянул на мой backend_wxagg.py файл и обнаружил, что он полностью отличается от того, который указан здесь. Поэтому я скопировал это из версии 0.99.1.1 в свой файл 1.0.1. (Вероятно, мне следует просто удалить 1.0.1 matplotlib и использовать более старую версию.) В любом случае, примеры заработали, так что я доволен.

Ответ №1:

На какой ОС вы работаете и как вы установили matplotlib?

Ваше решение, скорее всего, что-то сломает… Вам необходимо собрать и установить серверную часть wx, как обычно. Я не уверен насчет серверной части wx, но несколько других серверных частей являются расширениями C, а не просто файлом python.

Серверная часть wx не создается по умолчанию, поэтому она обычно включается в виде отдельного пакета. (например, python-matplotlib-wx в случае Suse) Вам нужно будет установить серверную часть wx через ваш менеджер пакетов, как обычно.

Если вы используете ОС без менеджера пакетов (например, Windows, osx), установщик может иметь или не иметь встроенный сервер wx в зависимости от того, кто его создал и как он был настроен. Я абсолютно ничего не знаю об операционных системах, отличных от Linux или BSD, так что здесь вы предоставлены сами себе. Попробуйте посмотреть, откуда вы загрузили двоичный файл matplotlib, и посмотреть, есть ли у них отдельный установщик для серверной части wx.

Если вы создаете из исходного кода, вам необходимо включить серверную часть wx и перестроить. Для этого отредактируйте site.cfg файл в вашем каталоге сборки. Возможно, вам потребуется переименовать файл по умолчанию ( site.cfg.default или что-то в этом роде) в site.cfg , если у вас еще нет site.cfg файла в вашем каталоге сборки.

Надеюсь, это поможет!

Комментарии:

1. ИЛИ я мог бы просто продолжать штамповать строки, пока что-то не сломается через месяц, а затем действительно расстроиться и потратить дни, пытаясь это исправить. Я использую Windows, и я получил версию x64 из «неофициальных» пакетов Кристофа Голке.