Illustration 3D d'une matrice
Bonjour,
Je dispose d'une matrice de données expérimentales telles que la première colonne représente les X, la première ligne les Y et l'intérieur de la matrice les Z :
Savez vous comment représenter sur un graph 3D ce type de données?
Merci
Je dispose d'une matrice de données expérimentales telles que la première colonne représente les X, la première ligne les Y et l'intérieur de la matrice les Z :
y1 y2 y3 y4
x1 z1,1 z1,2 ... ...
x2 z2,1 z2,2
x3
x4
Savez vous comment représenter sur un graph 3D ce type de données?
Merci
A voir également:
- Illustration 3D d'une matrice
- Architecte 3d gratuit - Télécharger - Architecture & Déco
- 3d slash - Télécharger - 3D
- Google maps satellite 3d - Guide
- Smartshow 3d - Télécharger - Visionnage & Diaporama
- Paint 3d mac - Télécharger - Dessin & Illustration
2 réponses
non mais je sais qu'il y a des logiciels comme SCILAB ou MATLAB (et dans une moindre mesure XCAS) qui permettent sûrement d'arriver à tes fins. Plus qu'à trouver un tutoriel
Bonjour,
Généralement on utilise plutôt une heat map, qu'on obtient par exemple à l'aide
Exemple :
Il existe aussi des affichages en 3D, voir par exemple
Pour convertir ta matrice sous ce format, tu peux faire ainsi :
Bonne chance
Généralement on utilise plutôt une heat map, qu'on obtient par exemple à l'aide
matplotlib.pyplot.matshow
Exemple :
import matplotlib.pyplot matplotlib.pyplot.matshow([[1, 2], [2, 4]])
Il existe aussi des affichages en 3D, voir par exemple
ax.scatter3Dmais ce genre de graphiques sont généralement peu exploitables. Ce layout attend une séries de points 3D présentés sous la forme de trois vecteurs, correspondant respectivement aux coordonnées x, y, et z.
Pour convertir ta matrice sous ce format, tu peux faire ainsi :
import matplotlib.pyplot as plt a = [[1, 2], [2, 4]] # Must be a square matrix m = len(a) x, y, z = map( list, zip( *( (i, j, a[i][j]) for i in range(m) for j in range(m) ) ) ) print(x, y, z) # [0, 0, 1, 1], [0, 1, 0, 1], [1, 2, 3, 4] fig = plt.figure() ax = plt.axes(projection='3d') ax.scatter3D(x, y, z)
Bonne chance