142 votes

la figure deimshow () est trop petite

J'essaie de visualiser un tableau numpy en utilisant imshow() car il est similaire à imagesc() dans Matlab.

imshow(random.rand(8, 90), interpolation='nearest')

La figure résultante est très petite au centre de la fenêtre grise, alors que la majeure partie de l'espace est inoccupée. Comment puis-je définir les paramètres pour agrandir le chiffre ? J'ai essayé figsize=(xx,xx) et ce n'est pas ce que je veux. Merci !

64voto

Nikolas Points 133

C'est étrange, ça marche vraiment pour moi :

from matplotlib import pyplot as plt

plt.figure(figsize = (20,2))
plt.imshow(random.rand(8, 90), interpolation='nearest')

J'utilise le backend "MacOSX", btw.

9voto

Agile Bean Points 417

Mise à jour 2020

comme demandé par @ baxxx, voici une mise à jour car random.rand est obsolète pendant ce temps.

Cela fonctionne avec matplotlip 3.2.1 :

from matplotlib import pyplot as plt
import random
import numpy as np

random = np.random.random ([8,90])

plt.figure(figsize = (20,2))
plt.imshow(random, interpolation='nearest')

Ce tracé :

enter image description here

Pour changer le nombre aléatoire, vous pouvez expérimenter avec np.random.normal(0,1,(8,90)) (ici moyenne = 0, écart type = 1).

2voto

toylas Points 387

Moi aussi, je suis nouveau en python. Voici quelque chose qui fera ce que vous voulez

axes([0.08, 0.08, 0.94-0.08, 0.94-0.08]) #[left, bottom, width, height]
axis('scaled')`

Je crois que cela détermine la taille de la toile.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X