我有一个在 x 轴上有 528 个点的图。x 轴由 mmm yyyy 标记。我想在上面绘制数据,但数据是月度形式的。我想获取每个月度数据点,并在月初将其绘制为一个点。
% Axis and plot
t = 731:1258; % 20120101 to 20130611
y = reshape(dataPoint_Anom1x1(:,:,731:end),[],1); % Size 528x1
x = datenum(2009, 12, 31) + t; % Convert t into serial numbers
plot(x, y); % Plot data
hold on
下面的部分是我遇到的麻烦。dataPoint_Clim1x1 的大小为 12x1。(1,1) 对应 1 月,(2,1) 对应 2 月,依此类推。我需要在 2012 年 1 月和 2013 年 6 月之间的每个月初将相应月份的气候点绘制为一个点。
%%%% Plot climatology on the same graph
dataClim_1x1 = dataClim(u,v,:); % Array that only contains points 1 degree away from 72.5E and 67.25S
B = mean(dataClim_1x1); % Average along the column
dataPoint_Clim1x1 = mean(B,2); % Average along the row
x_dataClim = ???
y_dataClim = reshape(dataPoint_Clim1x1, [],1); % Change dataPoint_Clim1x1 into a 1 column matrix
plot(x_dataClim,y_dataClim) % y_dataClim is only 12x1.
所以上面的 plot 命令是错误的。我是否只需要以某种方式设置 x 轴,以便它以某种方式每个月用 datenum 绘制?我不想使用辅助轴。