matplotlib pyplot.plt.style работает в терминале, но не в SublimeText, PyCharm или BBEdit - PullRequest
0 голосов
/ 11 марта 2020

У меня много проблем с matplotlib, в частности pyplot.style.use(). Что у меня есть.

Сначала приведу пример кода, адаптированный из Python Cra sh Курс 2e.

inputvalues = [1, 2, 3, 4, 5]
squares = [1, 4, 9, 16, 25]
plt.style.use('seaborn')
fig, ax = plt.subplots()
ax.scatter (2, 4, s=200)
plt.show()

При вводе одной строки за раз на терминале python все работает как положено. Однако, когда я запускаю любой из моих Python редакторов, я получаю ошибки.

В Sublime Text, plt.style.use('seaborn') помечается, и консоль говорит:

Traceback (most recent call last):
  File "<file path>", line 6, in <module>
    plt.style.use('seaborn')
AttributeError: 'module' object has no attribute 'style'

В Pycharm ошибка кажется более фундаментальной. Он запускается в самой первой строке скрипта, говоря:

Traceback (most recent call last):
  File "<filepath>", line 1, in <module>
    import matplotlib.pyplot as plt
ModuleNotFoundError: No module named 'matplotlib'

BBedit имеет похожую, но отчетливую ошибку matplotlib:

Traceback (most recent call last):
  File "<file path>", line 3, in <module>
    plt.style.use('seaborn')
NameError: name 'plt' is not defined

Это множество ошибок выходит за рамки моих полномочий n00b python отладить.

1 Ответ

1 голос
/ 11 марта 2020

Вы, вероятно, работаете в разных python средах без значения. В терминале активирована одна среда - в ней установлена ​​matplotlib. Другой используется в PyCharm, а другой нет.

Так что причина root не в кодировании Python, а в том, чтобы каждое приложение указывало на один и тот же исполняемый файл python. Сравните путь к исполняемому файлу в вашей конфигурации PyCharm на Preferences | Project | Project Interpreter с тем, который у вас есть в Terminal. Исполняемый набор Python для терминала можно найти, запустив echo `which python`.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...