Bonjour !
Est-il possible, de la même façon qu'avec des couleurs, d'avoir plusieurs courbes sur un graph avec des marqueurs différents ?
Merci
Bonjour !
Est-il possible, de la même façon qu'avec des couleurs, d'avoir plusieurs courbes sur un graph avec des marqueurs différents ?
Merci
Bonjour,
Oui tout à fait, il suffit de modifier la propriété Marker de ta courbe (comme la propriété Color pour les couleurs...)
Bon courage,
Duf
Simulink & Embedded Coder
Au boulot : Windows 7 , MATLAB r2016b
A la maison : ArchLinux mais pas MATLAB
en fait, je n'arrive pas à mettre 'Marker',2/i_gap à la place de 'LineWidth',2/(i_gap)...
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 for i_gap=1:length(nonzeros(RT_gap(1,:,1))) RT2plot=[]; RT2plot = nonzeros(RT_gap(:,i_gap,1)) if [RT2plot]~=0 d=[1:size([RT2plot])] e=length(d) f=[((d/e)*100)] g=sort(RT2plot,1) subplot(2,2,1),plot(g,f,'-o','LineWidth',2/(i_gap)),xlabel('Time (s)'),ylabel ('%'),title('Cumulate RT PRO Left'),legend(strlegend,-1),legend('boxoff'), hold on end end
Merci
Je ne vois pas bien à quoi cela servirait
La propriété Marker n'attend pas un scalaire mais un caractère => LineSpec
Le mieux est de créer un tableau de cellules avec quelques marqueurs et de les utiliser dans la boucle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 mark = {'+' '*' 'o' 'd'}; for n=1:4 h=line(rand(1,5),rand(1,5)); set(h,'marker',mark{n}) end
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
Merci, c 'est parfait...cependant, j'ai été obligé de rajouter des virgules entre les différents marqueurs pour que cela fonctionne.
Un grand merci à toi et à tout le forum
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
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 for i_gap=1:length(nonzeros(RT_gap(1,:,1))) RT2plot=[]; RT2plot = nonzeros(RT_gap(:,i_gap,1)) if [RT2plot]~=0 d=[1:size([RT2plot])] e=length(d) f=[((d/e)*100)] g=sort(RT2plot,1) mark = {'+', 'o', '*', 'd','x','v','h','p','s','.'}; h=plot(g,f,'k'),xlabel('Time (s)'),ylabel ('%'),title('Cumulate RT PRO Left'),legend(strlegend,-1),legend('boxoff'); set(h,'marker',mark{i_gap}) hold on end end end
le voici...cependant, j'ai un autre petit problème...je voudrais quemais j'ai l'impression que ca ne fonctionne pas avec le subplot
Code : Sélectionner tout - Visualiser dans une fenêtre à part h=subplot(2,2,1),plot(g,f,'k'),xlabel('Time (s)'),ylabel ('%'),title('Cumulate RT PRO Left'),legend(strlegend,-1),legend('boxoff');
Merci
oups...ca marche sans les virgules...j ai plus les yeux en face des trous
ok..;resolu aussi pour le subplot...il fallait mettre :
Encore merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 subplot(2,2,1),h=plot(g,f,'k'),xlabel('Time (s)'),ylabel ('%'),title('Cumulate RT PRO Left'),legend(strlegend,-1),legend('boxoff'); set(h,'marker',mark{i_gap})
Pourquoi est-ce que tu écris tout sur une seule ligne ?
C'est illisible
Ecris plutôt comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 subplot(2,2,1) h=plot(g,f,'k') set(h,'marker',mark{i_gap}) xlabel('Time (s)') ylabel('%') title('Cumulate RT PRO Left') legend(strlegend,-1) legend('boxoff');
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
Et tu mets trop de signe dans la syntaxe :
s'écrit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 d=[1:size([RT2plot])] e=length(d) f=[((d/e)*100)]
C'est quand même mieux, non ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 d=1:size(RT2plot); e=length(d); f=(d/e)*100;
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
effectivement, c'est galère de modifier une ligne qui fait 15 km de long...
Idem pour les parenthèses !
Mais je suis un ultra novice de la programmation matlab...je m'y suis mis que depuis 3 semaines alors y a une foule de choses que je ne maitrise pas...mais ça viendra !
Merci pour les conseils
Et utilise NUMEL à la place de SIZE pour connaitre le nombre d'élément dans un vecteur.
Car :
SIZE est plus utile avec une matrice ou un tableau ND
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 M = rand(5,1); a = 1:size(M) b = 1:numel(M) M = rand(1,5); a = 1:size(M) b = 1:numel(M)
Ingénieur indépendant en mécatronique - Conseil, conception et formation
- Conception mécanique (Autodesk Fusion 360)
- Impression 3D (Ultimaker)
- Développement informatique (Python, MATLAB, C)
- Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)
« J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager