【发布时间】:2020-06-07 05:33:22
【问题描述】:
我在一次代码中创建了一些绘图,这些绘图位于绘图选项卡中。每次重新运行时,我都尝试将其全部删除,但不知何故,以前的情节仍然没有关闭,它只会创建新的情节,而不会从上一次运行中清除以前的情节。我已经尝试使用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)
【问题讨论】:
-
不删除以前运行创建的图是一个令人困惑的情况。似乎 Spyder 开发人员正在使用与控制台相同的范例:保留历史记录直到内核重新启动(实际上这意味着永远不会),但是当控制台中的运行输出由运行命令分隔时,绘图是不可区分的。对我来说,这是一个值得商榷的选择,至少应该有一个选项可以在再次运行代码之前自动清除输出、控制台和绘图。
标签: python matplotlib plot seaborn spyder