如何在oringinal scale

时间:2015-11-19 10:03:11

标签: matlab matlab-figure

我有一个5000个值的数组MA1我希望得到每100个值的差值,然后除以100得到每100个点之间的梯度。 然后我想在同一图表上绘制MA1数据和渐变,以便从图100中的点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;

1 个答案:

答案 0 :(得分:1)

这有用吗?

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步;

enter image description here