Bonjour

Je récupère les traces d'un analyseur de spectre et là, j'essaie faire un waterfall
J'aimerais que ce waterfall soit cyclique.
Pour le moment, j'ai réussi à en faire un waterfall avec un nombre de points en Z fixe par exemple 100 ou 500 en modifiant simplement la valeur finale de la boucle « for » qui gère l’acquisition.
X= ne nombre de point d’acquisition (751 pts) il sera transformé plus tard pour afficher la fréquence
Y= l’amplitude du signal
Z= le nombre d’itérations, par exemple 100

J'aimerais, qu'arriver à la valeur finale de Z (par exemple 100) la valeur continue à s'incrémenter, mais que la longueur du graphique n'augmente pas.
Un peu comme si le graphique avançait avec un nombre de points en Z toujours constant.

Je suppose d'arriver à la valeur finale de 100 par exemple, on insère la nouvelle valeur, on supprime la première valeur, et on décale tout le tableau d’une ligne.
Ça me semble assez lourd…
Est-ce que vous avez une idée du principe que je peux utiliser pour réaliser cette opération efficacement avec Matlab ?
Merci

l'extrait utile du code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
%% Acquisition des traces actives 
for i=1:500
    acquisition.i=i;
    disp(i)
if parametres.canalActif(1)==1
    write(ssa,'TRACe:DATA? 1'); 
    trace= readline(ssa); 
    data=textscan(trace,'%f ','Delimiter',',' ); %acquisition ASCII à lire comme double (%f) le séparateur entre 2 valeurs et la ,
    acquisition.CH1(i,:)=cell2mat(data);
    parametres.n=size(acquisition.CH1(i),1); %détermine la taille des données normalement 751
end
pause(0.2)
end
 %% axe fréquences
   parametres.fstep=(parametres.ffin-parametres.fdeb)/parametres.n;
   acquisition.axef=( parametres.fdeb:parametres.fstep:parametres.ffin);
   acquisition.axef=acquisition.axef(1:(parametres.n));
    %% Affiche la figure
    parametres.screen_size = get(0,'ScreenSize');
    parametres.largeur  = parametres.screen_size(3);
    parametres.hauteur = parametres.screen_size(4);
    figure('Name','Analyseur SIGLENT','Position',[100, (parametres.hauteur-(600+77+5)), 1024, 600]);
    %% tracé de 1 à 4 traces
 
    waterfall(acquisition.CH1)
Nom : waterfall.png
Affichages : 350
Taille : 109,5 Ko