如何在原始尺度上绘制差异值

How to plot differenced values on oringinal scale

我有一个包含 5000 个值的数组 MA1 我想取每第 100 个值的差值,然后除以 100 以获得每第 100 个点之间的梯度。 然后我想在同一图表上绘制 MA1 数据和梯度,以便从点 100 开始的梯度显示在图表上的点 100,我该怎么做?
现在 MA1 的索引为 1:5000 而 C 仅为 1:500。我希望 C 出现在 MA1 的每 100 个位置,但我不希望介于两者之间。

 MA1=rand(5000);
 N=100;
 B=MA1(1:N:length(MA1));
 C=diff(B)/N;

这个有用吗?

dataLen = 50;
MA1 = rand(1, dataLen);
N   = 5;
B   = MA1(1:N:length(MA1));
C   = diff(B) / N;
D   = N:N:(length(MA1) - N);

figure;
hold on;
plot(1:dataLen, MA1);
plot(D, C, 'ko', 'MarkerSize', 8, 'LineWidth', 4);
hold off;

这是我使用上述代码生成的图形 - 但仅从 1:50 开始,渐变步长为 5;