ノート
完全なサンプルコードをダウンロードするには、ここをクリックしてください
バーコード番号
このデモでは、バーコードを生成する方法を示します。
Figure のサイズは、ピクセル単位の幅がデータ ポイント数の倍数になるように計算され、補間によるアーティファクトを防ぎます。さらに、
Axes
は Figure 全体にまたがるように定義されており、すべてAxis
がオフになっています。
データ自体は次をimshow
使用してレンダリングされます
code.reshape(1, -1)
データを 1 行の 2D 配列に変換します。imshow(..., aspect='auto')
非正方形ピクセルを許可します。imshow(..., interpolation='nearest')
エッジのぼやけを防ぎます。Figure の幅をピクセル単位で微調整したため、これは発生しないはずですが、念のためです。
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()
参考文献
この例では、次の関数、メソッド、クラス、およびモジュールの使用が示されています。