Настройка: Anaconda 3 (Win10 64), Spyder 4 и Python 3.7. I Python Графика по умолчанию (Inline). Я все еще новичок в Python, но я посмотрел вокруг и не нашел ответа, который решает мою проблему до сих пор. Спасибо всем заранее.
Так что в этой настройке всякий раз, когда я создаю график, используя matplotlib, он появляется на панели графиков Spyder. Например,
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
df = pd.DataFrame(np.random.randint(0,100,size=(100, 1)), columns=list('A'))
bp = df.boxplot(column = 'A')
создает коробочный график. Теперь, если я хочу добавить заголовок к сюжету, код будет
bp.set_title("This Title")
Вот где у меня возникают некоторые проблемы. Если я запускаю весь блок вместе
df = pd.DataFrame(np.random.randint(0,100,size=(100, 1)), columns=list('A'))
bp = df.boxplot(column = 'A')
bp.set_title("This Title")
, тогда я получаю блок-диаграмму с заголовком «Этот заголовок», отображаемым на панели графиков, , что я и хочу.
Однако, если я запускаю приведенный выше код построчно в консоли I Python, во 2-й строке будет получен блокпост, как и ожидалось, но 3-я строка не повлияет на изображение на графике панель, так что изображение на панели графиков по-прежнему не имеет заголовка
Теперь, если я go в Инструменты> Настройки> I Python Консоль> Графика и установить графику backend для Automati c вместо встроенного по умолчанию, затем, когда я построчно запускаю код в консоли, я получаю изображение, которое всплывает в другом окне, и оно выполняет обновление / обновление на основе по новым строкам вошел в консоль. Я понимаю, что встроенные графики должны быть stati c, но я подумал, что видел другой пост, в котором кто-то сказал, что можно обновить встроенные графики? Итак, теперь мои вопросы:
- Делать графики только обновлять / обновлять sh по строковым кодам в консоли I Python, если графический бэкэнд не stati c как встроенный?
- Почему я получаю другой результат, когда я запускаю кодовые блоки по сравнению с построчными?
- Если есть возможность обновить встроенные графики (предпочтительно на панели графиков Spyder), как ты делаешь это? Я пробовал различные способы перерисовки графиков, например
plt.show()
plt.draw()
bp.get_figure().canvas.draw()
, но ни один из этих обновлений не обновляет изображение в области печати. Я подумал, что даже если я не смогу обновить изображение, я, по крайней мере, смогу перерисовать его (то есть 2-е изображение появится на панели графика с характеристиками обновления). Но ничего, что я пробовал, до сих пор не сработало Пожалуйста, сообщите и еще раз спасибо.