Сюжеты Matplotlib не отображаются в Mac OSX?
Я запускаю Mac OSX 10.5.8. Я установил matplotlib, используя macports. Я приведу несколько примеров из галереи matplotlib, как этот, без изменений:
http://matplotlib.sourceforge.net/examples/api/unicode_minus.html
Я запускаю его, не получаю ошибки, но изображение не появляется. В Linux Ubuntu я получаю его.
Знаете ли вы, что здесь может быть неправильно?
Спасибо
Ответы
Ответ 1
Я могу проверить это и на моем конце. Чтобы исправить, вот что я сделал
sudo port install py25-matplotlib +cairo+gtk2
sudo port install py26-matplotlib +cairo+gtk2
Кроме того, нам нужно изменить базовый компонент по умолчанию на один из графических интерфейсов.
Отредактируйте файл ~/.matplotlib/matplotlibrc
и добавьте:
backend: GTKCairo
Кроме того, вы можете попробовать следующее, что может позволить вам не использовать GTK или Cairo.
Измените ~/.matplotlib/matplotlibrc
и добавьте:
backend: MacOSX
Если порт с этими вариантами установлен, это также работает, но для него не требуется X11.
Кстати, ошибка, которую я видел, была следующей:
/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/matplotlib/backends/__init__.py:41: UserWarning:
Your currently selected backend, 'Agg' does not support show().
Please select a GUI backend in your matplotlibrc file ('/Users/wlynch/.matplotlib/matplotlibrc') or with matplotlib.use()
(backend, matplotlib.matplotlib_fname()))
Ответ 2
У меня была та же проблема, даже я мог видеть, как было создано новое окно приложения и сразу исчезло.
Простое решение - просто проверьте, есть ли у вас
plt.show()
после графика
Ответ 3
Это то, что сработало для меня. Я просто изменил импорт Matplotlib
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
Ответ 4
При попытке
plt.savefig('myfilename.png')
вместо
plt.show()
сохраняет ли это правильное изображение с именем myfilename.png
в текущем пути?
Ответ 5
просто чтобы добавить заметку,
Файл matplotlibrc отсутствовал в моей системе, и мне пришлось загрузить копию с веб-сайта matplotlib. Будущим пользователям, возможно, придется сделать то же самое.
Ответ 6
Это то, что сработало для меня:
brew install pkg-config
brew link pkg-config
brew install pygtk
brew install freetype
brew install libpng
sudo ln -s /usr/local/Cellar/freetype/*/lib/pkgconfig/freetype2.pc /usr/local/lib/pkgconfig/freetype2.pc
git clone [email protected]:matplotlib/matplotlib.git
cd matplotlib
python setup.py build
python setup.py install
Литература:
http://blog.caoyuan.me/2012/08/matplotlib-error-mac-os-x/
http://matplotlib.org/faq/installing_faq.html#install-from-git
http://www.tapir.caltech.edu/~dtsang/python.html
Ответ 7
У меня был только python 2.5, и я не хотел устанавливать python 2.6 на мой mac. Поэтому для решения этой проблемы я использовал другую процедуру, указанную в следующей ссылке:
http://www.gtkforums.com/viewtopic.php?f=3&t=54928
То, что на самом деле нужно, это следующие шаги:
1) Поиск, где находится каталог "pygtk-2.0.pc", и найти его. Например, моя была расположена в следующем каталоге:
/Opt/локальные/Library/pkg-config
2) Добавление информации о пути в переменную envirement. Например:
PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
export PKG_CONFIG_PATH
3) Загрузите файл с информацией о конфигурации "matplotlibrc" с веб-сайта matplotlib http://matplotlib.sourceforge.net/_static/matplotlibrc
4) Замените backend на MacOSX в файле и сохраните его
5) Скопируйте файл в каталог .matplotlib Вы можете найти каталог в python с помощью следующей команды:
import matplotlib
matplotlib.get_configdir()
Ответ 8
Mac поставляется с собственным Python (читай здесь, что не является лучшим), я бы предложил просто установить некий Python 3.7 или около того вместе с Anaconda, а затем представить их как интерпретаторы PyCharm. все будет работать нормально, и вам не нужно добавлять специальные решения, такие как "backend: MacOSX" или около того.
Ответ 9
Сделайте следующее, если кто-то использует spyder.
1.) Запустите Spyder 2.3.5.2 из Anaconda Launcher 2.) Перейдите в настройки → Консоль IPython → Графика → Бэкенд: изменили его на "Автоматический" 3.) Выберите "Применить" и закройте настройки 3.) Перезапустите ядро IPython 4.) Создание простой графики, как
Ответ 10
В качестве временной работы можно сохранить рисунок в .png/.jpg/.pdf и использовать этот файл на данный момент.
## assuming price is out DataFrame that contains columns that we want to plot
pdf_plot=price.plot().get_figure()
pdf_plot.savefig('Stocks.pdf')
Ответ 11
sudo port install py37-matplotlib +cairo+gtk3
~/.matplotlib/matplotlibrc used
backend: MacOSX
Похоже, что работает на MacOS Mojave 10.14.4 с python 3.7 на примере unicode_minus.py выше.
Ответ 12
просто скопируйте это в свой терминал:
echo "backend: TkAgg" >> ~/.matplotlib/matplotlibrc