Créer un code-barres avec Matplotlib

PythonPythonBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Ce laboratoire montre comment créer un code-barres à l'aide de Matplotlib en Python. Le code-barres est produit à l'aide d'un tableau binaire de uns et de zéros, et est affiché à l'aide de Axes.imshow.

Conseils sur la machine virtuelle

Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Carnet de notes pour accéder au carnet Jupyter pour pratiquer.

Parfois, vous devrez peut-être attendre quelques secondes pour que le carnet Jupyter ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations du carnet Jupyter.

Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez votre feedback après la session, et nous résoudrons rapidement le problème pour vous.

Importez les bibliothèques requises

Nous devons tout d'abord importer les bibliothèques nécessaires, y compris numpy et matplotlib.

import matplotlib.pyplot as plt
import numpy as np

Créez le tableau binaire

Ensuite, nous devons créer le tableau binaire qui sera utilisé pour générer le code-barres. Dans cet exemple, nous utiliserons le tableau binaire suivant :

code = np.array([
    1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1,
    0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0,
    1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1,
    1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1])

Définissez les valeurs de pixel et de DPI

Nous devons définir les valeurs de pixel et de DPI pour le code-barres. Dans cet exemple, nous utiliserons une valeur de pixel de 4 et une valeur de DPI de 100.

pixel_per_bar = 4
dpi = 100

Créez la figure et les axes

Nous devons créer la figure et les axes pour le code-barres. Nous définirons la taille de la figure comme étant un multiple du nombre de points de données, et nous désactiverons tous les axes.

fig = plt.figure(figsize=(len(code) * pixel_per_bar / dpi, 2), dpi=dpi)
ax = fig.add_axes([0, 0, 1, 1])  ## couvre toute la figure
ax.set_axis_off()

Rendu du code-barres

Enfin, nous pouvons rendre le code-barres en utilisant Axes.imshow. Nous utiliserons code.reshape(1, -1) pour convertir les données en un tableau 2D avec une seule ligne, imshow(..., aspect='auto') pour autoriser des pixels non carrés, et imshow(..., interpolation='nearest') pour éviter les bords flous.

ax.imshow(code.reshape(1, -1), cmap='binary', aspect='auto',
          interpolation='nearest')
plt.show()

Sommaire

Dans ce laboratoire, nous avons appris à créer un code-barres à l'aide de Matplotlib en Python. Nous avons tout d'abord importé les bibliothèques nécessaires, puis créé un tableau binaire qui sera utilisé pour générer le code-barres. Nous avons ensuite défini les valeurs de pixel et de DPI et créé la figure et les axes. Enfin, nous avons rendu le code-barres en utilisant Axes.imshow.