Codice a barre n.

Questa demo mostra come produrre un codice a barre.

La dimensione della figura viene calcolata in modo che la larghezza in pixel sia un multiplo del numero di punti dati per evitare artefatti di interpolazione. Inoltre, Axesè definito per coprire l'intera figura e tutti Axissono disattivati.

I dati stessi vengono resi con imshowusing

  • code.reshape(1, -1)per trasformare i dati in un array 2D con una riga.

  • imshow(..., aspect='auto')per consentire pixel non quadrati.

  • imshow(..., interpolation='nearest')per evitare bordi sfocati. Ciò non dovrebbe accadere comunque perché abbiamo messo a punto la larghezza della figura in pixel, ma solo per sicurezza.

import matplotlib.pyplot as plt
import numpy as np


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])

pixel_per_bar = 4
dpi = 100

fig = plt.figure(figsize=(len(code) * pixel_per_bar / dpi, 2), dpi=dpi)
ax = fig.add_axes([0, 0, 1, 1])  # span the whole figure
ax.set_axis_off()
ax.imshow(code.reshape(1, -1), cmap='binary', aspect='auto',
          interpolation='nearest')
plt.show()
dimostrazione del codice a barre

Riferimenti

L'uso delle seguenti funzioni, metodi, classi e moduli è mostrato in questo esempio:

Galleria generata da Sphinx-Gallery