2009-11-07 11 views
2

J'aiComment créer un tracé de ligne de base dans MATLAB?

a = 

    54.1848 
    50.0456 
    99.9748 
    83.1009 
    63.1457 
    91.7577 
    64.0805 
    48.2090 
    75.7711 

t = 

    79.7077 
    31.0913 
    14.9389 
    10.8303 
    16.4844 
    26.8465 
    41.6946 
    77.3369 
    186.3246 

Comment faire un simple tracé de la ligne avec a sur y axis et t sur x axis?

plot (a,t) donne

alt text

et plot (t,a) donne

alt text

Je ne comprends pas comment ceux-ci sont générés. Le résultat devrait être autre chose.

+0

qu'est-ce que vous attendez? Cela se comporte comme le 'GL_LINES' dans OpenGL – Amro

+0

Je sais ce que vous attendez ... mais vous avez vraiment besoin d'être beaucoup plus explicite avec votre question! –

Répondre

7
[t_sorted, index] = sort(t); 
plot(t_sorted, a(index)); 

est le moyen le plus efficace de le faire.

Ou, si vous ne vous souciez pas vraiment pour avoir les lignes que vous pouvez simplement utiliser:

plot(t,a,'rx') 
+1

Je ne sais pas pourquoi cela a été downvoted - c'est la bonne réponse! –

+1

** sortrows() ** est plus facile – Amro

+0

Un point mineur: L'OP a dit qu'il voulait tracer 't' sur l'axe des x et' a' sur l'axe des y, donc il suffit d'échanger les deux variables dans votre code . – gnovice

3

Je pense que si vous triez les deux vecteurs selon les valeurs de t et que vous utilisez ensuite plot(t,a) vous obtiendrez ce que vous voulez.

Questions connexes