Abondance relative des éléments chimiques

Où l’on exploite encore un jeu de données

Le jeu de données a été trouvé sur le site https://www.datastro.eu/pages/home/

Il indique le numéro atomique de 13 éléments, leurs noms, symboles, pourcentages sur Terre et dans l’Univers. Tout ce qu’il faut pour un graphique personnalisé avec Python.

Même sans maîtriser les fonctionnalités de Python et de son module graphique matplotlib, il vous sera facile de personnaliser ce graphe à votre convenance.

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

plt.rcParams["font.family"] = "Ubuntu"#Ici, une police installée sur votre ordinateur

#Extraction des valeurs du jeu de données :---------------------------------------
table=pd.read_csv("abondance-elements-chimiques.csv", delimiter=';', skiprows=1)
Z=table["AtomicNumber"]
symbole=table["Symbol"]
nom=table["FrenchName"]
PourcentTerre=table["Atoms%Earth"]
PourcentUniv=table["Atoms%Universe"]
#PourcentMasse=table["MassFraction"]#non utilisé
listeZ=Z.to_numpy()#pour graduer les abscisses
#-------------------------------------------------------------------------------------------
#Paramètres du graphiques :
fig=plt.figure(figsize=(7, 12), tight_layout=True)
ax=plt.subplot(111)
plt.title("Abondance relative des éléments chimiques", fontsize=14)
plt.xlabel("Numéro atomique croissant")
plt.ylabel("Pourcentage du nombre d'atomes")
largeur=0.5#largeur des barres

#Tracé des données :
plt.bar(Z-0.5*largeur, PourcentTerre, width=largeur, label="Terre",)
plt.bar(Z+0.5*largeur, PourcentUniv, width=largeur, label="Univers", )

#affichage des % :
seuilPourcent=0.1
for P in range(len(nom)):
    if PourcentUniv[P]>seuilPourcent:
        plt.text(Z[P], PourcentUniv[P]+0.5*largeur, "%.1f %%"%(PourcentUniv[P]),)
for P in range(len(nom)):
    if PourcentTerre[P]>seuilPourcent:
        plt.text(Z[P]-0.5*largeur, PourcentTerre[P]+0.5*largeur, "%.1f %%"%(PourcentTerre[P]),ha='right')

plt.xticks(listeZ, symbole)
plt.legend()
fig.savefig("AbondanceElements.png", dpi=300)
plt.show()

Le fichier Python (compressé) :

Le dataset :

2 Comments

  1. David ALBERTO said:

    Merci pour votre commentaire. Le fichier csv qui manquait est maintenant en téléchargement.

    17 novembre 2023
  2. Anonyme said:

    Merci pour la qualité de votre travail. J’ai toutefois du mal à accéder au fichier abondance-elements-chimiques.csv . Pourriez-vous nous le partager aussi s’il vous plaît?

    17 novembre 2023

Laisser un commentaire