Pycharm не отображает график из следующего кода:
import pandas as pd
import numpy as np
import matplotlib as plt
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts = ts.cumsum()
ts.plot()
Что происходит, так это то, что окно появляется меньше чем на секунду, а затем снова исчезает.
При использовании Pyzo IEP IDE (с использованием того же интерпретатора) на том же коде график выглядит так, как ожидалось.
... Так что проблема должна быть в какой-то настройке Pycharm. Я пробовал использовать как python.exe, так и pythonw.exe в качестве интерпретатора с одинаковыми результатами.
Это моя sys_info:
C:\pyzo2014a\pythonw.exe -u C:\Program Files (x86)\JetBrains\PyCharm Community Edition 3.4.1\helpers\pydev\pydevconsole.py 57315 57316
PyDev console: using IPython 2.1.0import sys; print('Python %s on %s' % (sys.version, sys.platform))
Python 3.4.1 |Continuum Analytics, Inc.| (default, May 19 2014, 13:02:30) [MSC v.1600 64 bit (AMD64)] on win32
sys.path.extend(['C:\\Users\\Rasmus\\PycharmProjects\\untitled2'])
In[3]: import IPython
print(IPython.sys_info())
{'commit_hash': '681fd77',
'commit_source': 'installation',
'default_encoding': 'UTF-8',
'ipython_path': 'C:\\pyzo2014a\\lib\\site-packages\\IPython',
'ipython_version': '2.1.0',
'os_name': 'nt',
'platform': 'Windows-8-6.2.9200',
'sys_executable': 'C:\\pyzo2014a\\pythonw.exe',
'sys_platform': 'win32',
'sys_version': '3.4.1 |Continuum Analytics, Inc.| (default, May 19 2014, '
'13:02:30) [MSC v.1600 64 bit (AMD64)]'}
python
matplotlib
pycharm
Расмус Ларсен
источник
источник
plt.pyplot.show()
работу?Ответы:
Просто используйте
Эта команда указывает системе нарисовать график в Pycharm.
Пример:
источник
plt.draw()
поскольку я обновляю цифру позже?plt.show()
работает нормально, ноplt.draw()
ничего не показывает в PyCharm.%matplotlib inline
. @CGFox, draw предназначается для явного рендеринга в память, но не для отображения на экране (или в файл). Вам нужно либо plt.pause (0.1), чтобы отобразить графики, либо вызвать plt.show (pause = True) в какой-либо другой точке кода, чтобы заставить их отобразитьЯ понимаю, что это старый, но я решил развеять заблуждение для других путешественников. Установка
plt.pyplot.isinteractive()
дляFalse
средств , что сюжет будет на быть обращено на конкретные команды , чтобы нарисовать (т.е.plt.pyplot.show()
). Установкаplt.pyplot.isinteractive()
дляTrue
средств , которые каждыйpyplot
(plt
команда) будут вызывать команду отрисовки (то естьplt.pyplot.show()
). Итак, то, что вы, более чем вероятно, искали, -plt.pyplot.show()
это отображение графика в конце программы.В качестве примечания вы можете немного сократить эти операторы, используя следующую команду импорта,
import matplotlib.pyplot as plt
а неmatplotlib as plt
.источник
У меня такая же проблема. Проверьте, верно ли
plt.isinteractive()
. Мне помогла установка значения «Ложь».источник
Я пробовал разные решения, но в итоге у меня сработало
plt.show(block=True)
. Вам необходимо добавить эту команду послеmyDataFrame.plot()
команды, чтобы это вступило в силу. Если у вас несколько сюжетов, просто добавьте команду в конец кода. Это позволит вам увидеть все данные, которые вы строите.источник
Работает для меня. (PyCharm / OSX)
источник
plt.show()
больше не помогло в более новой версии PyCharm (2020.1).Я тестирую свою версию Pycharm (Community Edition 2017.2.2), вам может потребоваться объявить как plt.interactive (False), так и plt.show (block = True) следующим образом:
источник
Я нашел решение. Это сработало для меня:
источник
Вскоре после звонка
вызов
Вы получите всплывающее окно matplotlib с изображением.
Это путь блокировки. Дальнейший скрипт не запустится, пока поп не закроется.
источник
У меня проблема заключалась в том, что matplotlib использовал неправильный бэкэнд. Я использую Debian Jessie.
В консоли я сделал следующее:
Результат был: «agg», тогда как это должно быть «TkAgg».
Решение было простым:
источник
Просто добавь
plt.pyplot.show()
, это было бы хорошо.Лучшее решение - отключить SciView.
источник
В своей версии тестировал на PyCharm 2017.1.2. Я использовал интерактивные (True) и show (block = True).
источник
Ничего из вышеперечисленного не помогло мне, но следующее:
Снимите флажок (Показать графики в окне инструментов) в pycharm
settings > Tools > Python Scientific
.Я получил ошибку
No PyQt5 module found
. Пошли вперед с установкой,PyQt5
используя:Помните, что для некоторых достаточно только первого шага, и он работает.
источник
Мой env: macOS и anaconda3
Это работает для меня:
или интерактивный режим:
источник
у меня была эта проблема, и я мог ее решить, вы можете протестировать мой способ .. отключите «показывать графики в окне инструментов» в настройке -> инструменты -> научный Python
источник
Комментарий от DanT исправил это для меня, matplotlib с pycharm в linux с бэкэндом GTKagg. При импорте matplotlib я бы получил следующую ошибку:
При построении чего-то вроде этого:
Появится экран с фигурами, но диаграммы не появятся. с помощью:
отображает графику правильно.
источник
В моем случае я хотел сделать следующее:
Следуя сочетанию приведенных здесь решений, я решил добавить перед этим следующие команды:
со следующими двумя импортами
Похоже, что в моем случае все команды необходимы, с MBP с ElCapitan и PyCharm 2016.2.3. Приветствую!
источник
Для новичков вы также можете убедиться, что вы запускаете свой скрипт в консоли , а не как обычный код Python. Достаточно легко выделить фрагмент кода и запустить его .
источник
В неинтерактивном env мы должны использовать plt.show (block = True)
источник
Для тех, кто запускает скрипт внутри IDE (и не работает в интерактивной среде, такой как консоль python или ноутбук), я считаю это наиболее интуитивно понятным и простым решением:
Он показывает цифру и ждет, пока пользователь не щелкнет в новом окне. Только после этого он возобновляет выполнение сценария и запускает остальной код.
источник
Я был в состоянии получить комбинацию некоторых других предложений здесь работает для меня, но только тогда , переключая
plt.interactive(False)
кTrue
и обратно.Это осветит мои сюжеты. Затем установите
False
разрешение на просмотр.Как уже отмечалось, моя программа не выйдет, пока не будут закрыты все окна. Вот некоторые подробности о моей текущей среде выполнения:
источник
Для pycharm необходимо установить одно свойство.
источник
Измените импорт на:
или используйте эту строку:
источник
Я использую Ubuntu, и я пробовал, как сказал @Arie выше, но с этой строкой только в терминале:
И это сработало!
источник
В Pycharm иногда не отображается Matplotlib.plot.
Итак, после вызова
plt.show()
проверки на правой панели инструментов SciView. Внутри SciView будут храниться все сгенерированные графики.источник
Я столкнулся с ошибкой выше, когда пытался построить гистограмму, и у меня работали точки ниже.
ОС: Mac Catalina 10.15.5
Версия Pycharm: версия сообщества 2019.2.3
Версия Python: 3.7
из :
import matplotlib.pylab as plt
кому:
import matplotlib.pyplot as plt
из:
кому:
plt.show()
источник