Petite question matlab

soleil_levant Messages postés 393 Date d'inscription   Statut Membre Dernière intervention   -  
 Pacorabanix -
Bonjour,
J'ai un souci avec matlab, je veux présenter une variable tableau sur un dessin. Je pense que mon problème vient du faite que ma variable doit etre convertie en matrice mais comment? ou bien ca vient d'autre choses.
Voici comment je remplis ma variable :
(...) manque une code mais c'est pas important car c'est une présentation de fonction randn() signal aléatoire

N = 1000
for i=0:(N-1)
u=c + (i*pas);
v=u + pas;
compt([i+1])= 0;

for j=1:M
if (U(j)>=u && U(j)<= v)
compt([i+1]) = compt([i+1])+1;

end
end
end

%M = cell2mat(compt([i+1]));
plot(compt([i+1]))

Je n'arrive pas à présenter la variable. En faire elle se remplie bien au cour de la boucle, je fais juste compt dans la console matlab et je vois bien qu'elle est remplie, mais quand je fais le plot rien de rien.

Avez vous une idée s'il vous plait??

Merci d'avance.

2 réponses

Pacorabanix
 
salut

là tu fais plot( un nombre),

il faut faire plot du vecteur (pas de crochets) à la fin, non ?

Et à part ça si tu as besoin de faire de gros calculs, il est fortement conseillé de vectorialiser au maximum et éviter des boucles for imbriquées, va voir https://www.commentcamarche.net/faq/11669-la-vectorialisation-sous-matlab par exemple pour une petite intro à ce sujet. Si ton programme est trop lent ce sera ça la solution.

A+
0
Pacorabanix
 
d'ailleurs je ne comprend pas ta syntaxe avec les parenthèses pour compt, tu peux pas utiliser juste les crochets (et le voir simplement comme un vecteur dès le début) ?
0