figure() parcorr(Y) %偏相关 %ACF和PACF图 y_h_adf = adftest(Y) y_h_kpss = kpsstest(Y) %平滑性检验,yd1_h_adf =1,yd1_h_kpss =0,通过检验 train_size = round(length(time_series_data) * 0.95); train_data = time_series_data(1:train_size); test_data = time_series_data(train_size+1:end); Yd1 = diff(train_data); %一阶差分图 plot(Yd1) datetick('x', 'yyyy-mm-dd') %格式化时间轴 xlabel('时间') ylabel('汇率/(单位:元)') 怎么让这段代码的X坐标从2020开始
时间: 2024-03-05 14:55:16 浏览: 63
可以在 `datetick` 函数中指定时间轴起始时间,比如:
```matlab
datetick('x', 'yyyy-mm-dd', 'keepticks', 'keeplimits', 'startdate', '2020-01-01')
```
这样就会让时间轴的起始时间从 2020 年开始,保持原有的刻度和范围。
相关问题
figure() parcorr(Y) %偏相关 %ACF和PACF图 xlabel('时间') ylabel('汇率/(单位:元)') y_h_adf = adftest(Y) y_h_kpss = kpsstest(Y) %平滑性检验,yd1_h_adf =1,yd1_h_kpss =0,通过检验 train_size = round(length(time_series_data) * 0.95); train_data = time_series_data(1:train_size); test_data = time_series_data(train_size+1:end); Yd1 = diff(train_data); %一阶差分图 plot(Yd1)怎么修改代码让横坐标显示时间
可以将时间序列数据的时间点作为横坐标,然后在绘图时将横坐标设置为时间。具体修改代码如下:
假设时间序列数据为time_series_data,对应的时间点为time_points,可以将时间点作为横坐标,然后在绘图时设置横坐标为时间,代码如下:
```
figure()
parcorr(time_series_data) %偏相关
%ACF和PACF图
xlabel('时间')
ylabel('汇率/(单位:元)')
y_h_adf = adftest(time_series_data)
y_h_kpss = kpsstest(time_series_data) %平滑性检验,yd1_h_adf =1,yd1_h_kpss =0,通过检验
train_size = round(length(time_series_data) * 0.95);
train_data = time_series_data(1:train_size);
test_data = time_series_data(train_size+1:end);
time_points = 1:length(train_data); % 时间点
Yd1 = diff(train_data); %一阶差分图
plot(time_points(2:end), Yd1) % 设置横坐标为时间
xlabel('时间')
ylabel('汇率/(单位:元)')
```
其中,time_points为时间序列数据对应的时间点,Yd1为一阶差分后的序列数据。在绘制一阶差分图时,将横坐标设置为time_points(2:end),因为一阶差分后的序列数据比原始数据少了一个数据点。
clc; clear; data = readmatrix('汇率05.03两列.xlsx'); %载入数据 MM=data(2:730,2); x=data(2:730,1); figure() datenum('1900-01-01') plot(x+693962,MM); % datetick('x', 'yyyy-mm-dd');%设置坐标轴为yyyy-mm-dd 格式 xlabel('时间') ylabel('汇率/(单位:元)') time_series_data = data(2:730,2); Y=time_series_data'; figure() autocorr(Y) %自相关 xlabel('时间') ylabel('汇率/(单位:元)') figure() parcorr(Y) %偏相关 %ACF和PACF图 xlabel('时间') ylabel('汇率/(单位:元)') y_h_adf = adftest(Y) y_h_kpss = kpsstest(Y) %平滑性检验,yd1_h_adf =1,yd1_h_kpss =0,通过检验 train_size = round(length(time_series_data) * 0.95); train_data = time_series_data(1:train_size); test_data = time_series_data(train_size+1:end); Yd1 = diff(train_data); %一阶差分图 plot(Yd1)怎么让figure3显示时间
要让 figure3 显示时间,可以在绘制时添加 x 轴坐标,即时间戳。可以使用 `datetick` 函数将 x 轴坐标转换为日期格式。修改代码如下:
```matlab
Yd1 = diff(train_data);
figure()
plot(x(2:train_size), Yd1);
datetick('x', 'yyyy-mm-dd');
xlabel('时间');
ylabel('汇率/(单位:元)');
```
这样就可以在 figure3 中显示时间了。
阅读全文