Nota
Haga clic aquí para descargar el código de ejemplo completo
código de barras #
Esta demostración muestra cómo producir un código de barras.
El tamaño de la figura se calcula de modo que el ancho en píxeles sea un múltiplo del número de puntos de datos para evitar artefactos de interpolación. Además,
Axes
se define para abarcar toda la figura y todos Axis
están apagados.
Los datos en sí se procesan con el imshow
uso
code.reshape(1, -1)
para convertir los datos en una matriz 2D con una fila.imshow(..., aspect='auto')
para permitir píxeles no cuadrados.imshow(..., interpolation='nearest')
para evitar bordes borrosos. Esto no debería suceder de todos modos porque ajustamos el ancho de la figura en píxeles, pero solo para estar seguros.
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()
Referencias
En este ejemplo se muestra el uso de las siguientes funciones, métodos, clases y módulos: