create a "moving window" plot

16 vues (au cours des 30 derniers jours)
Emily Platt
Emily Platt le 20 Juin 2021
Commenté : Emily Platt le 21 Juin 2021
Hello, I have a cell array that i want to plot (all numeric values) called RR. the data was collected over time so values lower down would be later in time. i want to plot multiple plots on seperate figures in a moving window apporach.
I want to plot the first 257 points, and then the next 257 on a seperate plot etc and then the final plot which will be smaller than the rest
i know to use the first one I'd type:
plot(RR(1:257))
and then i'm assuming i should use a for loop but im struggling to incoporate it
Thank you in advance

Réponse acceptée

Walter Roberson
Walter Roberson le 20 Juin 2021
Assuming numeric RR
for base = 1 : 257 : length(RR)
idx = base : min(length(RR), base+256);
figure
plot(idx, RR(idx));
end
  1 commentaire
Emily Platt
Emily Platt le 21 Juin 2021
Thank you very much!

Connectez-vous pour commenter.

Plus de réponses (1)

Image Analyst
Image Analyst le 20 Juin 2021
Unfortunately you forgot to attach your cell array. If it's bigger than 5 MB, crop it down. Then use the paperclip icon so we can try things.
How many cells are in the cell array? Are the contents of each of the cells in the cell array the same (like a 1-D 257 element vector) or does each array have a different size? What is the size of the contents of the array in each cell? Why are you even using cell arrays instead of a normal 3 or 4-D double array (why complicate things)?
If ca is your cell array
for k = 1 : length(ca)
thisVector = ca{k}; % Assume each cell has a long vector in it.
indexes = unique([1 : 257 : length(thisVector), length(thisVector)]);
for k2 = 1 : length(indexes) - 1
index1 = indexes(k2);
index2 = indexes(k2 + 1) - 1;
plot(thisVector(index1:index2), '-', 'LineWidth', 2)
hold on;
end
end
grid on;
hold off;
  1 commentaire
Emily Platt
Emily Platt le 20 Juin 2021
hello, thank you for your help, there are 1402 cells in total. ive now moved the data to a 1402x1 double to make it easier since it should just be a simple plot from here?

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by