Cher communauté stackoverflow!La taille du pixel python imshow varie au sein de l'intrigue
J'ai besoin de tracer une carte 2D en python en utilisant imshow. La commande utilisée est
plt.imshow(ux_map, interpolation='none', origin='lower', extent=[lonhg_all.min(), lonhg_all.max(), lathg_all.min(), lathg_all.max()])
L'image est alors enregistrée comme suit
plt.savefig('rdv_cr%s_cmlon%s_ux.png' % (2097, cmlon_ref))
et ressemble à
Le problème est que lors d'un zoom dans l'intrigue, on peut remarquer que les pixels ont des formes différentes (par exemple une largeur différente). Ceci est illustré dans la partie zoomée ci-dessous (extrait de la région supérieure du la première image):
Y at-il raison de ce comportement? Je saisis une grille rectangulaire pour mes données, mais le problème n'a rien à voir avec les données elles-mêmes, je suppose. Au lieu de cela, c'est probablement quelque chose lié au rendu. Je m'attendrais à ce que tous les pixels soient de forme égale, mais comme on peut le voir, ils ont des largeurs et des hauteurs différentes. En passant, cela se produit également dans le graphique interactif de matplotlib. Cependant, lorsque vous zoomez dessus, ils deviennent tout à coup tout aussi soudés. Je ne suis pas sûr si https://github.com/matplotlib/matplotlib/issues/3057/ et le lien qui s'y trouve pourrait être lié, mais je peux essayer de jouer avec des valeurs de ppp. Dans tous les cas, si quelqu'un sait pourquoi cela se produit, cette personne pourrait-elle expliquer pourquoi l'ordinateur ne peut pas afficher l'intrigue comme prévu en utilisant les commandes d'en haut?
Merci pour vos réponses!
Qu'en est-il des paramètres ppp? Est-ce que l'enregistrement du fichier en pdf (ou d'autres formats graphiques vectoriels) aide? Je voudrais éviter les algorithmes d'interpolation afin que l'image soit aussi étroitement liée aux données que possible. – bproxauf
Un paramètre élevé de dpi devrait aider, ainsi qu'un format graphique vectoriel. Les deux transfèrent essentiellement le problème de l'affichage "correct" des données dans l'application de visualisation. Personnellement, je préfère les graphiques vectoriels. De cette façon, celui qui regarde les graphiques peut zoomer et dézoomer à leur gré et c'est leur problème si une image ne correspond pas à l'écran 1: 1 :) – kazemakase