问题
I am using python 3.7.
I am performing time series forecasting using an ARIMA model. I am assessing the properties of my data for ARIMA using an Autocorrelation Plot - specifically using autocorrelation_plot from pandas.plotting.
My data has 50,000 records or so, making the plot extremely busy and hard to pick out any specific trends. Is there a way to limit the x-axis to bring the first few hundred lags more into focus?
I can't share the actual plot, but my code is as follow:
import pandas as pd
from pandas.plotting import autocorrelation_plot
#Import Data
time_series_2619 = pd.read_csv("Consumption/2619.csv", parse_dates=['Date/Time'], index_col = ['Date/Time'])['Recording']
#Auto Correlation Plot
autocorrelation_plot(time_series_2619)
I couldn't find anything in the documentation.
回答1:
autocorrelation_plot
returns a matplotlib.axis object. Hence, you can simply use the set_xlim()
method to limit the x-axis:
ax = autocorrelation_plot(time_series_2619)
ax.set_xlim([0, 500])
回答2:
Alternatively, you can use the plot_acf()
function and specify the lags.
# import the plotting functions for act and pacf
from statsmodels.graphics.tsaplots import plot_acf, plot_pacf
plot_acf(df1['Thousands of Passengers'], lags=40);
来源:https://stackoverflow.com/questions/55628711/using-pandas-autocorrelation-plot-how-to-limit-x-axis-to-make-it-more-readable