Bonjour,
je voudrai créer un système d'axe non linéaire, par exemple, 6, 8, 10, 12, 16, 20, 25, 32, 40, 50, 63, 80, 100 de telle sorte qu'entre chaque nombre il y ait la même distance ; est-ce possible avec Matlab ?
Merci
A+
Bonjour,
je voudrai créer un système d'axe non linéaire, par exemple, 6, 8, 10, 12, 16, 20, 25, 32, 40, 50, 63, 80, 100 de telle sorte qu'entre chaque nombre il y ait la même distance ; est-ce possible avec Matlab ?
Merci
A+
Salut
J'ai pensé à ça mais ça marche pas terrible...
A revoir ou attendre autres idées..
close all
figure;
A = [6, 8, 10, 12, 16, 20, 25, 32, 40, 50, 63, 80, 100]
set(gca,'XTickLabel',A,'xlim',[A(1),A(end)])
Bonjour.
Essaie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part set(gca,'xtick',[6:2:100])
Bonjour Newenda,
j'ai essayé, ça marche mais l'axe s'arrête à 50 et j'sais nin pourquoi![]()
La bonne solution consiste à faire ceci :
Maintenant, le problème va être de positionnner correctement le tracé dans ce nouveau repère.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 A = [6, 8, 10, 12, 16, 20, 25, 32, 40, 50, 63, 80, 100] figure set(gca,'xtick',1:numel(A),'xticklabel',num2str(A(:)),'xlim',[0 numel(A)+1])
En fait, il s'agit d'(appliquer la transformée entre l'espace equi-réparti linéaire x (1 2 3 4...) et l'espace défini par A (6 8 10 12 ...) :
- 1 ->2 => 6 -> 8
- 2 -> 3 => 8 -> 10
- 3 -> 4 => 10 -> 12
- ...
bon, même si j'ai pas la fin pour le moment, c'est pas trop grave mais le pire c'est que ça ne fait pas du tout ce que je souhaite :
les droites qui apparaissent sur la figure devraient être parallèles !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 close all; b=[8,10,14,18,24,31,41,55,71,92,122,160]; d=b; a=pi*d/1000; figure plot(d,a*80,d,a*106,d,a*140); set(gca,'Xticklabel',b,'Xlim',[b(1),b(end)]); set(gca,'Yticklabel',b,'Ylim',[b(1),b(end)]); grid
Hum raffraichis la page...y'a eu une réponse pas mal de Dut juste avant ...
Partager