[Calcul scientifique / technique par Python] Dessin, visualisation, matplotlib de lignes de contour 2D (couleur), etc.

introduction

Créez un diagramme de contour en utilisant les méthodes ** pcolor **, ** imshow ** et contour de matplotlib.

Post-scriptum: 28 août 2017: ** Ajout de contenu (4) qui mélange le maillage et le contour pcolor. ** **

Contenu

(1) Considérons $ z = sin (x) + cos (y) $ et dessinez-le en pcolor dans l'intervalle [0, x, 10], [0, y, 10]. J'utilise un maillage pcolor. Plus rapide que pcolor ().

(2) Exemple de dessin utilisant impshow

(3) Diagramme de contour utilisant le contour

(4) Un mélange de maillage pcolor et de contour

Exemple (1): Utilisation de pcolormesh


import numpy as np
import matplotlib.pyplot as plt

x = np.arange(0, 10, 0.05) #Génération de la plage de dessin sur l'axe x. 0 à 10 0.Par incréments de 05.
y = np.arange(0, 10, 0.05) #Génération de la plage de dessin de l'axe y. 0 à 10 0.Par incréments de 05.

X, Y = np.meshgrid(x, y)
Z = np.sin(X) + np.cos(Y)   #Spécifiez la formule de calcul à afficher. Les contours sont faits pour Z.

plt.pcolormesh(X, Y, Z, cmap='hsv') #Générez une carte de contour. Spécifiez la règle de coloration avec cmap.
#plt.pcolor(X, Y, Z, cmap='hsv') #Générez une carte de contour. Spécifiez la règle de coloration avec cmap.

pp=plt.colorbar (orientation="vertical") #Affichage de la barre de couleur
pp.set_label("Label", fontname="Arial", fontsize=24) #Étiquette de la barre de couleur

plt.xlabel('X', fontsize=24)
plt.ylabel('Y', fontsize=24)

plt.show()


Résultat (1): Diagramme utilisant le maillage pcolor

t.png

Exemple (2): Utilisation d'impshow

Si vous souhaitez visualiser rapidement un tableau à deux dimensions, utilisez matplotlib.pyplot.imshow ().

import numpy as np
import matplotlib.pyplot as plt

z=np.zeros([100,100])
for i in range(100):
    for j in range(100):
        z[i,j] = i+j

plt.imshow(z)
plt.colorbar () #Affichage de la barre de couleur
plt.xlabel('X')
plt.ylabel('Y')
plt.show()

Résultat (2): impshow

t.png


Exemple (3) Diagramme de contour utilisant un contour

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(0, 10, 0.05) #Génération de la plage de dessin sur l'axe x. 0 à 10 0.Par incréments de 05.
y = np.arange(0, 10, 0.05) #Génération de la plage de dessin de l'axe y. 0 à 10 0.Par incréments de 05.

X, Y = np.meshgrid(x, y)
Z = np.sin(X) + np.cos(Y)   #Spécifiez la formule de calcul à afficher. Les contours sont faits pour Z.

#Générez une carte de contour.
cont=plt.contour(X,Y,Z,  5, Vmax=1,colors=['black'])
cont.clabel(fmt='%1.1f', fontsize=14)


pp=plt.colorbar (orientation="vertical") #Affichage de la barre de couleur
pp.set_label("Label", fontname="Arial", fontsize=24) #Étiquette de la barre de couleur



plt.xlabel('X', fontsize=24)
plt.ylabel('Y', fontsize=24)

plt.show()

Résultat (3): diagramme de contour

t.png


Exemple (4) Mélange de maillage pcolor et contour

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(0, 10, 0.05) #Génération de la plage de dessin sur l'axe x. 0 à 10 0.Par incréments de 05.
y = np.arange(0, 10, 0.05) #Génération de la plage de dessin de l'axe y. 0 à 10 0.Par incréments de 05.

X, Y = np.meshgrid(x, y)
Z = np.sin(X) + np.cos(Y)   #Spécifiez la formule de calcul à afficher. Les contours sont faits pour Z.

#Générez une carte de contour.
cont=plt.contour(X,Y,Z,  5, vmin=-1,vmax=1, colors=['black'])
cont.clabel(fmt='%1.1f', fontsize=14)


plt.xlabel('X', fontsize=24)
plt.ylabel('Y', fontsize=24)


plt.pcolormesh(X,Y,Z, cmap='cool') #Diagramme de contour de couleur
pp=plt.colorbar (orientation="vertical") #Affichage de la barre de couleur
pp.set_label("Label",  fontsize=24)

plt.show()

Résultat (4): Mélange de maillage pcolor et contour

fig.png


[Addenda]

Spécifiez le modèle avec ** cmap ** de la spécification de la carte de couleurs. Des dizaines de modèles sont disponibles. Des exemples peuvent être trouvés ici [https://matplotlib.org/examples/color/colormaps_reference.html):

'prism', 'ocean', 'gist_earth', 'terrain', 'gist_stern', 'gnuplot', 'gnuplot2', 'CMRmap', 'cubehelix', 'brg', 'hsv', 'gist_rainbow', 'rainbow', 'jet', 'nipy_spectral', 'gist_ncar'


Recommended Posts

[Calcul scientifique / technique par Python] Dessin, visualisation, matplotlib de lignes de contour 2D (couleur), etc.
[Calcul scientifique / technique par Python] Dessin de surface courbe 3D, surface, fil de fer, visualisation, matplotlib
[Calcul scientifique / technique par Python] Tracé, visualisation, matplotlib de données 2D lues à partir d'un fichier
[Calcul scientifique / technique par Python] histogramme, visualisation, matplotlib
[Calcul scientifique / technique par Python] Graphique logistique, visualisation, matplotlib
[Calcul scientifique / technique par Python] Graphique de coordonnées polaires, visualisation, matplotlib
Calcul scientifique / technique avec Python] Dessin et visualisation d'isoplans 3D et de leurs vues en coupe à l'aide de mayavi
[Calcul scientifique / technique par Python] Dessin d'animation de mouvement parabolique avec locus, matplotlib
[Calcul scientifique / technique par Python] Exemple de visualisation de champ vectoriel, champ magnétique électrostatique, matplotlib
[Calcul scientifique / technique par Python] Tracer, visualiser, matplotlib des données 2D avec barre d'erreur
[Calcul scientifique / technique par Python] Fonctionnement de base du tableau, numpy
[Calcul scientifique et technique par Python] Dessin de figures fractales [Triangle de Shelpinsky, fougère de Bernsley, arbre fractal]
[Calcul scientifique / technique par Python] Marche aléatoire 2D (problème de marche ivre), calcul numérique
[Calcul scientifique / technique par Python] Calcul de somme, calcul numérique
[Calcul scientifique / technique par Python] Simulation de Monte Carlo par la méthode metropolis de la thermodynamique du système de spin ascendant 2D
[Calcul scientifique / technique par Python] Ajustement par fonction non linéaire, équation d'état, scipy
[Calcul scientifique / technique par Python] Calcul du produit de la matrice par l'opérateur @, python3.5 ou supérieur, numpy
[Calcul scientifique / technique par Python] Calcul de matrice inverse, numpy
[Calcul scientifique / technique par Python] Interpolation de Lagrange, calcul numérique
[Calcul scientifique / technique par Python] Calcul numérique pour trouver la valeur de la dérivée (différentielle)
[Calcul scientifique / technique par Python] Solution analytique sympa pour résoudre des équations
[Calcul scientifique / technique par Python] Interpolation spline de troisième ordre, scipy
[Calcul scientifique / technique par Python] Intégration Monte Carlo, calcul numérique, numpy
[Calcul scientifique / technique par Python] Solution numérique d'une équation différentielle ordinaire du second ordre, problème de valeur initiale, calcul numérique
[Calcul scientifique / technique par Python] Liste des matrices qui apparaissent dans Hinpan en algèbre linéaire numérique
[Calcul scientifique / technique par Python] Liste des utilisations des fonctions (spéciales) utilisées en physique en utilisant scipy
[Calcul scientifique / technique par Python] Vague "gémissement" et vitesse de groupe, superposition des vagues, visualisation, physique du lycée
[Calcul scientifique / technique par Python] Solution numérique d'un problème d'oscillateur harmonique unidimensionnel par vitesse Méthode de Berle
[Calcul scientifique / technique par Python] Solution numérique du problème des valeurs propres de la matrice par multiplication de puissance, algèbre linéaire numérique
[Calcul scientifique / technique par Python] Intégration numérique, loi trapézoïdale / Simpson, calcul numérique, scipy
[Calcul scientifique / technique par Python] Résolution d'équations linéaires simultanées, calcul numérique, numpy
[Calcul scientifique / technique par Python] Transformation de Fourier à grande vitesse discrète en 3D unidimensionnelle, scipy
[Calcul scientifique / technique par Python] Dérivation de solutions analytiques pour équations quadratiques et cubiques, formules, sympy
[Calcul scientifique / technique par Python] Résolution d'équations différentielles ordinaires, formules mathématiques, sympy
Exemple d'analyse de squelette tridimensionnelle par Python
[Calcul scientifique / technique par Python] Résolution du problème de la valeur aux limites des équations différentielles ordinaires au format matriciel, calcul numérique
[Calcul scientifique / technique par Python] Résolution de problèmes de valeurs propres (généralisés) en utilisant numpy / scipy, en utilisant des bibliothèques
[Calcul scientifique / technique par Python] Résolution de l'équation différentielle ordinaire du second ordre par la méthode Numerov, calcul numérique
[Calcul scientifique / technique par Python] Résolution de l'équation de Newton unidimensionnelle par la méthode Runge-Kutta du 4ème ordre
[Python] axe limite du graphe 3D avec Matplotlib
[Calcul scientifique / technique par Python] Solution numérique d'équations d'ondes unidimensionnelles et bidimensionnelles par méthode FTCS (méthode explicite), équations aux dérivées partielles bi-courbes
Calcul des indicateurs techniques par TA-Lib et pandas
[Calcul scientifique / technique par Python] Génération de nombres aléatoires non uniformes donnant une fonction de densité de probabilité donnée, simulation Monte Carlo
python --Exporte l'histogramme bidimensionnel par Matplotlib sous forme de tableau
[Calcul scientifique / technique par Python] Solution numérique d'équations différentielles ordinaires du premier ordre, problème de valeur initiale, calcul numérique