Очистка всех морских участков каждый раз, когда выполняется код на вкладке plots IDE Spyder - PullRequest
1 голос
/ 23 февраля 2020

Я создаю несколько графиков за один прогон кода, графики находятся на вкладке графиков. Я пытался удалить все это каждый раз, когда перезапускаю его, но каким-то образом предыдущие графики все еще там не закрываются, он только создает новые графики без очистки предыдущих графиков из предыдущего запуска. Я уже пытался использовать plt.close('all'), но это не работает. Как очистить все графики каждый раз при повторном запуске кода?

Вот мой код

import pandas as pd
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt

plt.close('all')
avo_sales = pd.read_csv('avocados.csv')
avo_sales.rename(columns = {'4046':'small Hass sold','4225':'large Hass sold','4770':'xlarge Hass sold'},
                 inplace= True)

for column in avo_sales.columns[2:11]:
    sns.set()
    fig, ax = plt.subplots()
    sns.set(style="ticks")
    sns.boxplot(column, data= avo_sales)  # column is chosen here
    sns.despine(offset=10, trim=True)

Ответы [ 2 ]

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

Изображения на панели графиков обрабатываются Spyder и недоступны с консоли I Python .

Простым решением будет нажатие значка «удалить изображения» перед повторным запуском кода:

enter image description here

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

Я не знаю, как заставить Spyder размещать графики на панели графиков, но вот несколько вещей, которые могут работать.

  1. Попробуйте отключить некоторые параметры панели:

enter image description here

Попробуйте некоторые магические функции c:

% reset - сбросьте все

% matplotlib - поместит все графики в линию с вашим кодом в интерактивном окне

% clear - очищает интерактивное окно

Используйте I Python напрямую, чтобы помочь (через: https://gist.github.com/stsievert/8655158355b7155b2dd8):
from IPython import get_ipython

get_ipython().magic('reset -sf')
...