Tracer les coefficients d'une matrice
Bonsoir,
je vous embête encore avec scilab. J'ai une grosse matrice carrée a coefficients entiers et j'aimerais "tracer" type damier avec des cases dont la couleur change en fonction de la valeur.
Je ne vois pas comment faire.
Amédé.
je vous embête encore avec scilab. J'ai une grosse matrice carrée a coefficients entiers et j'aimerais "tracer" type damier avec des cases dont la couleur change en fonction de la valeur.
Je ne vois pas comment faire.
Amédé.
Réponses
-
J'ai trouvé Matplot mais je ne suis pas convaincu
-
As-tu pensé à Excel ?
-
J'avais réussi à le faire en Matlab pour visualiser la convergence de la méthode QR et de celle de Jacobi le jour de mon épreuve de modélisation à l'agreg... il y a plus de 20 ans.
Je n'ai, malheureusement pour toi, aucune idée de comment faire aujourd'hui. -
Bonjour tout le monde,
Tu as essayé comme ceci ?n = 10 //A = grand(n,n,"nor",0,1) A = (1:n)'*ones(1,n) clf() surf(A') // attention, il faut plotter la transposée de ta matrice ! a = gca() a.rotation_angles = [0,-90] // x en abscisses a.isoview = "on" gcf().color_map = rainbowcolormap(128) // help colormap // pour voir la liste des colormaps colorbar() // bonus : la légende
-
Désolé, je crois que ça ne marche pas avec `surf()`, parce que les cases de la grille ne correspondent pas aux entrées de la matrice.
Il n'y a que $9\times 9$ cases, pour les $10\times 10$ entrées.
Les entrées de la matrice se retrouvent aux arètes du quadrillage au lieu d'être au milieu des faces. :-(
Ah non même pas... Je ne comprends pas exactement ce qui se passe. (en fait, si : on jette tout simplement à la poubelle la dernière ligne et la dernière colonne ! :-()
Voici un exemple où on voit le problème :n = 10 A = ((1:n)>n/2)'*((1:n)>n/5) clf() surf(A') // attention, il faut plotter la transposée de ta matrice !
-
Bonsoir,
tout marche très bien merci. -
Re salut,
Bah non, ça ne marche pas très bien. Par exemple, pour une matrice $2\times 2$, ça donnerait qu'une seule case : celle du coefficient $a_{1,1}$.
J'étais parti voter, et j'avais oublié le bricolage suivant, qui permet de vraiment plotter toute la matrice.
Comme ça, ça marche.n = 4 A = ((1:n))'*((1:2*n)) //A = ((1:n)>n/2)'*((1:n)>9) function surfEtendu(A) [x,y]=size(A) B = zeros(x+1,y+1) B(1:x,1:y)=A surf(B') // attention, il faut plotter la transposée de ta matrice ! endfunction clf() surfEtendu(A)
-
Je voulais dire pour ce que je souhaitais faire ça fonctionnait bien. Merci
Connectez-vous ou Inscrivez-vous pour répondre.
Bonjour!
Catégories
- 163.1K Toutes les catégories
- 8 Collège/Lycée
- 21.9K Algèbre
- 37.1K Analyse
- 6.2K Arithmétique
- 53 Catégories et structures
- 1K Combinatoire et Graphes
- 11 Sciences des données
- 5K Concours et Examens
- 11 CultureMath
- 47 Enseignement à distance
- 2.9K Fondements et Logique
- 10.3K Géométrie
- 62 Géométrie différentielle
- 1.1K Histoire des Mathématiques
- 68 Informatique théorique
- 3.8K LaTeX
- 39K Les-mathématiques
- 3.5K Livres, articles, revues, (...)
- 2.7K Logiciels pour les mathématiques
- 24 Mathématiques et finance
- 312 Mathématiques et Physique
- 4.9K Mathématiques et Société
- 3.3K Pédagogie, enseignement, orientation
- 10K Probabilités, théorie de la mesure
- 772 Shtam
- 4.2K Statistiques
- 3.7K Topologie
- 1.4K Vie du Forum et de ses membres