如何通过 for 循环在 运行 之后每次都显示一个情节,而不是让线条堆叠起来
How to make a plot show everytime after a run through a for loop and not let the lines stack up
我正在尝试显示 4 个自相关图,每列 1 个包含我的数据框的值。我正在使用 for 循环使其显示 4 次。但结果是自相关图只用 4 条线显示一次,而不是显示 4 次,每个图只显示 1 条线。
我的代码如下:
(忽略正在导入但未使用的库)
from dateutil.parser import parse
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
import pandas as pd
plt.rcParams.update({'figure.figsize': (5, 3), 'figure.dpi': 120}
from statsmodels.tsa.seasonal import seasonal_decompose
from dateutil.parser import parse
from scipy import signal
from pandas.plotting import autocorrelation_plot
# Import Data
ser = pd.read_csv('Time series analysis dataset Weekly.csv', parse_dates=['Date'], index_col='Date')
ser = ser[ser.YearOfDate != 2020]
ValueNames = ['Europe', 'Total', 'International', 'Distributor']
ColorsList = ['Blue','Green','Orange','Purple','Brown']
# Draw Plot
plt.rcParams.update({'figure.figsize':(7,4), 'figure.dpi':120})
for ValueRound in range(0,len(ValueNames)):
autocorrelation_plot(ser[f'{ValueNames[ValueRound]}'].tolist())
我通过运行脚本得到的结果是
由于 for 循环,绘制了 4 行,每个值名称 1 行。期望的结果是每 1 行有 4 个单独的图。在我使用普通绘图的其他脚本中,我在 for 循环中使用了 plt.plot.show() 。这导致 4 个图只有 1 条线。我如何为自相关图执行此操作?
我按照本指南进行时间序列分析 https://www.machinelearningplus.com/time-series/time-series-analysis-python/,我的脚本基于第 14 章中的脚本:如何测试季节性。
这是另一张带有所需情节的图片。为了得到这个图,我只循环了 1 次 for 循环,结果只有一行值名称 Europe。参见
通过在 for 循环末尾添加 plt.show()
而不是 plt.plot.show()
解决了问题
我正在尝试显示 4 个自相关图,每列 1 个包含我的数据框的值。我正在使用 for 循环使其显示 4 次。但结果是自相关图只用 4 条线显示一次,而不是显示 4 次,每个图只显示 1 条线。 我的代码如下: (忽略正在导入但未使用的库)
from dateutil.parser import parse
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
import pandas as pd
plt.rcParams.update({'figure.figsize': (5, 3), 'figure.dpi': 120}
from statsmodels.tsa.seasonal import seasonal_decompose
from dateutil.parser import parse
from scipy import signal
from pandas.plotting import autocorrelation_plot
# Import Data
ser = pd.read_csv('Time series analysis dataset Weekly.csv', parse_dates=['Date'], index_col='Date')
ser = ser[ser.YearOfDate != 2020]
ValueNames = ['Europe', 'Total', 'International', 'Distributor']
ColorsList = ['Blue','Green','Orange','Purple','Brown']
# Draw Plot
plt.rcParams.update({'figure.figsize':(7,4), 'figure.dpi':120})
for ValueRound in range(0,len(ValueNames)):
autocorrelation_plot(ser[f'{ValueNames[ValueRound]}'].tolist())
我通过运行脚本得到的结果是
由于 for 循环,绘制了 4 行,每个值名称 1 行。期望的结果是每 1 行有 4 个单独的图。在我使用普通绘图的其他脚本中,我在 for 循环中使用了 plt.plot.show() 。这导致 4 个图只有 1 条线。我如何为自相关图执行此操作?
我按照本指南进行时间序列分析 https://www.machinelearningplus.com/time-series/time-series-analysis-python/,我的脚本基于第 14 章中的脚本:如何测试季节性。
这是另一张带有所需情节的图片。为了得到这个图,我只循环了 1 次 for 循环,结果只有一行值名称 Europe。参见
通过在 for 循环末尾添加 plt.show()
而不是 plt.plot.show()