Tutoriel Python

Python ACCUEIL Introduction à Python Python pour commencer Syntaxe Python Commentaires Python Variables Python Types de données Python Nombres Python Casting Python Chaînes Python Booléens Python Opérateurs Python Listes Python Tuples Python Ensembles Python Dictionnaires Python Python Si... Sinon Boucles tant que Python Python pour les boucles Fonctions Python Python Lambda Tableaux Python Classes/Objets Python Héritage Python Itérateurs Python Portée Python Modules Python Dates Python Mathématiques Python PythonJSON Python RegEx PIP Python Python Essayer... Sauf Entrée utilisateur Python Formatage de chaîne Python

La gestion des fichiers

Gestion des fichiers Python Fichiers de lecture Python Python écrire/créer des fichiers Python Supprimer des fichiers

Modules Python

Tutoriel NumPy Procédure pas à pas Panda Tutoriel Scipy

Python Matplotlib

Introduction à Matplotlib Matplotlib Commencer MatplotlibPyplot Tracé Matplotlib Marqueurs Matplotlib Ligne Matplotlib Étiquettes Matplotlib Grille Matplotlib Sous-parcelles Matplotlib Matplotlib Scatter Barres Matplotlib Histogrammes Matplotlib Graphiques à secteurs Matplotlib

Apprentissage automatique

Commencer Mode médian moyen Écart-type Centile Diffusion des données Répartition normale des données Nuage de points Régression linéaire Régression polynomiale Régression multiple Échelle Former/Tester Arbre de décision

Python MySQL

MySQL Premiers pas Créer une base de données MySQL Créer une table MySQL Insertion MySQL Sélectionnez MySQL MySQL Où Trier MySQL par Supprimer MySQL Table de dépôt MySQL Mise à jour MySQL Limite MySQL Rejoindre MySQL

Python MongoDB

MongoDB Commencer MongoDB Créer une base de données Créer une collection MongoDB Insertion MongoDB Trouver MongoDB Requête MongoDB Tri MongoDB Supprimer MongoDB Collection de dépôt MongoDB Mise à jour MongoDB Limite MongoDB

Référence Python

Présentation de Python Fonctions intégrées Python Méthodes de chaîne Python Méthodes de liste Python Méthodes du dictionnaire Python Méthodes Python Tuple Méthodes d'ensemble Python Méthodes de fichier Python Mots-clés Python Exceptions Python Glossaire Python

Référence des modules

Module aléatoire Module de demandes Module Statistiques Module de mathématiques Module cMath

Python Comment

Supprimer les doublons de liste Inverser une chaîne Additionner deux nombres

Exemples Python

Exemples Python Compilateur Python Exercices Python Quizz Python Certificat Python

Matplotlib Scatter


Création de nuages ​​de points

Avec Pyplot, vous pouvez utiliser la scatter()fonction pour dessiner un nuage de points.

La scatter()fonction trace un point pour chaque observation. Il a besoin de deux tableaux de même longueur, un pour les valeurs de l'axe des x et un pour les valeurs de l'axe des y :

Exemple

Un simple nuage de points :

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])

plt.scatter(x, y)
plt.show()

Résultat:

L'observation dans l'exemple ci-dessus est le résultat du passage de 13 voitures.

L'axe X indique l'âge de la voiture.

L'axe Y indique la vitesse de la voiture lors de son passage.

Existe-t-il des relations entre les observations ?

Il semble que plus la voiture est récente, plus elle roule vite, mais cela pourrait être une coïncidence, après tout, nous n'avons enregistré que 13 voitures.


Comparer les parcelles

Dans l'exemple ci-dessus, il semble y avoir une relation entre la vitesse et l'âge, mais que se passe-t-il si nous traçons également les observations d'un autre jour ? Le nuage de points nous dira-t-il autre chose ?

Exemple

Dessinez deux tracés sur la même figure :

import matplotlib.pyplot as plt
import numpy as np

#day one, the age and speed of 13 cars:
x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
plt.scatter(x, y)

#day two, the age and speed of 15 cars:
x = np.array([2,2,8,1,15,8,12,9,7,3,11,4,7,14,12])
y = np.array([100,105,84,105,90,99,90,95,94,100,79,112,91,80,85])
plt.scatter(x, y)

plt.show()

Résultat:

Remarque : Les deux tracés sont tracés avec deux couleurs différentes, par défaut bleu et orange, vous apprendrez comment changer les couleurs plus loin dans ce chapitre.

En comparant les deux tracés, je pense qu'il est prudent de dire qu'ils nous donnent tous les deux la même conclusion : plus la voiture est récente, plus elle roule vite.



Couleurs

Vous pouvez définir votre propre couleur pour chaque nuage de points avec l' argument colorou :c

Exemple

Définissez votre propre couleur des marqueurs :

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
plt.scatter(x, y, color = 'hotpink')

x = np.array([2,2,8,1,15,8,12,9,7,3,11,4,7,14,12])
y = np.array([100,105,84,105,90,99,90,95,94,100,79,112,91,80,85])
plt.scatter(x, y, color = '#88c999')

plt.show()

Résultat:


Colorier chaque point

Vous pouvez même définir une couleur spécifique pour chaque point en utilisant un tableau de couleurs comme valeur pour l' cargument :

Remarque : Vous ne pouvez pas utiliser l' colorargument pour cela, uniquement l' cargument.

Exemple

Définissez votre propre couleur des marqueurs :

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
colors = np.array(["red","green","blue","yellow","pink","black","orange","purple","beige","brown","gray","cyan","magenta"])

plt.scatter(x, y, c=colors)

plt.show()

Résultat:


ColorMap

Le module Matplotlib a un certain nombre de palettes de couleurs disponibles.

Une palette de couleurs est comme une liste de couleurs, où chaque couleur a une valeur comprise entre 0 et 100.

Voici un exemple de palette de couleurs :

Cette palette de couleurs s'appelle 'viridis' et comme vous pouvez le voir, elle va de 0, qui est une couleur violette, et jusqu'à 100, qui est une couleur jaune.

Comment utiliser la carte des couleurs

Vous pouvez spécifier la palette de couleurs avec l'argument mot-clé cmapavec la valeur de la palette de couleurs, dans ce cas, 'viridis'qui est l'une des palettes de couleurs intégrées disponibles dans Matplotlib.

De plus, vous devez créer un tableau avec des valeurs (de 0 à 100), une valeur pour chacun des points du nuage de points :

Exemple

Créez un tableau de couleurs et spécifiez une palette de couleurs dans le nuage de points :

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
colors = np.array([0, 10, 20, 30, 40, 45, 50, 55, 60, 70, 80, 90, 100])

plt.scatter(x, y, c=colors, cmap='viridis')

plt.show()

Résultat:

Vous pouvez inclure la palette de couleurs dans le dessin en incluant la plt.colorbar()déclaration :

Exemple

Incluez la palette de couleurs réelle :

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
colors = np.array([0, 10, 20, 30, 40, 45, 50, 55, 60, 70, 80, 90, 100])

plt.scatter(x, y, c=colors, cmap='viridis')

plt.colorbar()

plt.show()

Résultat:

Cartes de couleurs disponibles

Vous pouvez choisir l'une des palettes de couleurs intégrées :

Name   Reverse
Accent   Accent_r
Blues   Blues_r
BrBG   BrBG_r
BuGn   BuGn_r
BuPu   BuPu_r
CMRmap   CMRmap_r
Dark2   Dark2_r
GnBu   GnBu_r
Greens   Greens_r
Greys   Greys_r
OrRd   OrRd_r
Oranges   Oranges_r
PRGn   PRGn_r
Paired   Paired_r
Pastel1   Pastel1_r
Pastel2   Pastel2_r
PiYG   PiYG_r
PuBu   PuBu_r
PuBuGn   PuBuGn_r
PuOr   PuOr_r
PuRd   PuRd_r
Purples   Purples_r
RdBu   RdBu_r
RdGy   RdGy_r
RdPu   RdPu_r
RdYlBu   RdYlBu_r
RdYlGn   RdYlGn_r
Reds   Reds_r
Set1   Set1_r
Set2   Set2_r
Set3   Set3_r
Spectral   Spectral_r
Wistia   Wistia_r
YlGn   YlGn_r
YlGnBu   YlGnBu_r
YlOrBr   YlOrBr_r
YlOrRd   YlOrRd_r
afmhot   afmhot_r
autumn   autumn_r
binary   binary_r
bone   bone_r
brg   brg_r
bwr   bwr_r
cividis   cividis_r
cool   cool_r
coolwarm   coolwarm_r
copper   copper_r
cubehelix   cubehelix_r
flag   flag_r
gist_earth   gist_earth_r
gist_gray   gist_gray_r
gist_heat   gist_heat_r
gist_ncar   gist_ncar_r
gist_rainbow   gist_rainbow_r
gist_stern   gist_stern_r
gist_yarg   gist_yarg_r
gnuplot   gnuplot_r
gnuplot2   gnuplot2_r
gray   gray_r
hot   hot_r
hsv   hsv_r
inferno   inferno_r
jet   jet_r
magma   magma_r
nipy_spectral   nipy_spectral_r
ocean   ocean_r
pink   pink_r
plasma   plasma_r
prism   prism_r
rainbow   rainbow_r
seismic   seismic_r
spring   spring_r
summer   summer_r
tab10   tab10_r
tab20   tab20_r
tab20b   tab20b_r
tab20c   tab20c_r
terrain   terrain_r
twilight   twilight_r
twilight_shifted   twilight_shifted_r
viridis   viridis_r
winter   winter_r

Taille

Vous pouvez changer la taille des points avec l' sargument.

Tout comme les couleurs, assurez-vous que le tableau des tailles a la même longueur que les tableaux des axes x et y :

Exemple

Définissez votre propre taille pour les marqueurs :

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
sizes = np.array([20,50,100,200,500,1000,60,90,10,300,600,800,75])

plt.scatter(x, y, s=sizes)

plt.show()

Résultat:


Alpha

Vous pouvez ajuster la transparence des points avec l' alphaargument.

Tout comme les couleurs, assurez-vous que le tableau des tailles a la même longueur que les tableaux des axes x et y :

Exemple

Définissez votre propre taille pour les marqueurs :

import matplotlib.pyplot as plt
import numpy as np

x = np.array([5,7,8,7,2,17,2,9,4,11,12,9,6])
y = np.array([99,86,87,88,111,86,103,87,94,78,77,85,86])
sizes = np.array([20,50,100,200,500,1000,60,90,10,300,600,800,75])

plt.scatter(x, y, s=sizes, alpha=0.5)

plt.show()

Résultat:


Combiner la taille de la couleur et l'alpha

Vous pouvez combiner une palette de couleurs avec différentes tailles sur les points. Ceci est mieux visualisé si les points sont transparents :

Exemple

Créez des tableaux aléatoires avec 100 valeurs pour les points x, les points y, les couleurs et les tailles :

import matplotlib.pyplot as plt
import numpy as np

x = np.random.randint(100, size=(100))
y = np.random.randint(100, size=(100))
colors = np.random.randint(100, size=(100))
sizes = 10 * np.random.randint(100, size=(100))

plt.scatter(x, y, c=colors, s=sizes, alpha=0.5, cmap='nipy_spectral')

plt.colorbar()

plt.show()

Résultat: