使用 matplotlib 绘制条形码

摘要:
使用matplotlib绘制条形码源代码和参考链接呈现代码importnumpyasnpimportmatplotlb。plotaspltcode=np数组
使用 matplotlib 绘制条形码

源码及参考链接

效果图

使用 matplotlib 绘制条形码第1张

代码

import numpy as np
import matplotlib.pyplot as plt

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 # 分辨率,默认值也是100

fig = plt.figure(figsize=(len(code)*pixel_per_bar/dpi, 2), dpi=dpi)
ax = fig.add_axes([0, 0, 1, 1]) # 设置坐标轴的范围为整个图窗
ax.set_axis_off() # 隐藏 ax 的坐标轴
ax.imshow(code.reshape(1,-1), # 必须将(N,1)转化为(N,1), 否则会报错
        cmap='binary', # 设置为二值图
        aspect='auto') # aspect 设置坐标轴的长宽比
        
plt.show()

简单的介绍其中的 API

  • plt.figure()

    figsize=(w,h) 窗口的宽和高,单位为英尺;
    dpi=100 窗口的分辨率,默认值为100;
    num=None 图窗的唯一标识,和 MATLAB 的机制类似的;

  • fig.add_axes(rect, projection=None, polar=False)

    rect 设置坐标轴在窗口的位置和大小[left, bottom, width, height]
    projection 投影方式,默认为 None;
    polar=false 此项为真时表示 projection='polar'

免责声明:文章转载自《使用 matplotlib 绘制条形码》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇aspnet webapi 跨域请求 405错误HTML5 文件操作API下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

vue项目条形码和二维码生成工具试用

项目开发需要,优惠券分不同类型,简单的使用id生成条形码供店铺使用,麻烦点的需要多个字段的就需要使用二维码来展示了,对应的效果如下 条形码(一维码)使用工具code128 需引入code128.js 和对应的 code123.css, 具体代码可以看 https://www.jb51.net/article/103472.htm 由于项目是vue开发,所以...

Chart控件文档

假设c1Chart1为Chart控件的一个实例。一、基本框架图二、主要外层属性(即this.c1Chart1的主要属性)1、Header和Footer,上标题和下标题。位于this.c1Chart1.Header和this.c1Chart2、Legend。图例,位于this.c1Chart.Legend。3、ChartArea。图表区,位于this.cha...

R语言学习——图形初阶之折线图与图形参数控制

plot()是R中为对象作图的一个泛型函数(它的输出将根据所绘制对象类型的不同而变化);plot(x,y,type="b")表示将x置于横轴,y置于纵轴,绘制点集(x,y),然后使用线段将其连接;type="b"表示同时绘制点和线,使用help(plot)可以查看其它选项。 实例: > dev.new() # 打开一个新的图形窗口NULL> d...

Android 目前最稳定和高效的UI适配方案

Android系统发布十多年以来,关于Android的UI的适配一直是开发环节中最重要的问题,但是我看到还是有很多小伙伴对Android适配方案不了解。刚好,近期准备对糗事百科Android客户端设计一套UI尺寸适配方案,可以和小伙伴们详细的聊一聊这个问题。 Android适配最核心的问题有两个,其一,就是适配的效率,即把设计图转化为App界面的过程是...

二维码(QR code)基本知识

1.二维码定义:   二维码(2-Dimensional Bar Code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的。它是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图案表示二进制数据,被设备扫描后可获取其中所包含的信息。一维条码的宽度记载着数据,而其长度没有记载数据。二维条码的长度、...

数据可视化:python matplotlib小试牛刀

Matplotlib有两个模块: 1) 绘图API:pyplot, 可这样导入import matplotlib.pyplot as plt    2)集成库:pylab, 是matplotlib Scipy Numpy的集成库 import pandas as pd import matplotlib.pyplot as plt from pylab i...