En traçant un tableau 2D avec matplotlib.imshow
La np.array
que les résultats de cette boucle a 4383 lignes et 6 colonnes. J'ai essayé sans succès d'utiliser pylab.imshow()
de matplotlib(pylab) pour afficher le tableau. L'objectif est de créer une image de la matrice, dans laquelle les couleurs gradient de représenter l'ampleur de la matrice de valeurs. Chaque ligne du tableau représente la variation de la profondeur d'un lac de la température dans chaque jour (4383 jours). Ainsi, l'objectif est de trouver les différences dans le lac des températures en profondeur et avec le temps. Merci
TempLake=np.zeros((N+1,Nlayers))
TempLake[0]=T0
Q=np.zeros(N+1)
Q[0]=0.0
for i in xrange(N):
Q[i+1]=Qn(HSR[i],TD[i],FW[i],TempLake[i][0])
TempLake[i+1]=main_loop(Z,z,Areat0,Areat1,TempLake[i],wind[i],Q[i],Q[i+1])
im = plt.imshow(tem, cmap='hot')
plt.colorbar(im, orientation='horizontal')
plt.show()
C'est le résultat: La légende est bien, mais l'axe des x sont inversées et l'image n'apparaît pas
C'est ce dont j'ai besoin:
OriginalL'auteur user1419224 | 2012-08-02
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser
pcolor
oupcolormesh
au lieu deimshow
. C'est parce que dansimshow
l'aspect de la figure est la même que la matrice, ce qui dans votre cas est 4383x6.OriginalL'auteur imsc
Vous peut utilisation
imshow
si vous venez de définir l'aspect lorsque vous l'appelez. Comme suit:où
aspect_ratio
ici serait le ratio d'aspect que vous voulez etcols/rows
juste normalise le ratio d'aspect original à 1.cols
etrows
sont les nombres de colonnes et de lignes (par exemple,rows = data.shape[0]
,cols = data.shape[1]
).aspect="auto"
qui fait le travail pour vous, en essayant de correspondre à l'image de la figure.OriginalL'auteur watsonic
Vous pouvez utiliser la fonction d'axe de matplotlib.pyplot:
De sorte que votre exemple devient :
OriginalL'auteur Nicolas Barbey
Peut-être que je me trompe, mais pour l', vous pouvez toujours utiliser imshow juste la transposition de l'image
avec moins de dire que la plost démarrer en bas à gauche, et le mot clé auto dans imshow. Mais comme je l'ai dit peut-être que je ne comprends pas le problème
imshow
l'aspect de la figure est la matrice dépend,transpose
sera juste de la faire pivoter de 90 degrés.C'est a bien fonctionné pour moi.
OriginalL'auteur Nicola Vianello