Python之图表、二维码生成

一、生成二维图表

1、首先安装numpy和matplotlib库

Python之图表、二维码生成
图1

2、直接上代码啦

#coding:utf-8

importnumpyasnp

importmatplotlib.pyplotasplt

plt.figure(1)# 创建图表1

plt.figure(2)# 创建图表2

ax1 = plt.subplot(211)# 在图表2中创建子图1

ax2 = plt.subplot(212)# 在图表2中创建子图2

x = np.linspace(0,3,100)#0开始 3结束  100个数

foriinrange(3):

    plt.figure(1)# # 选择图表1

    plt.plot(x,np.exp(i*x/3))

    plt.sca(ax1)# # 选择图表2的子图1

    plt.plot(x,np.sin(i*x))

    plt.sca(ax2)# 选择图表2的子图2

    plt.plot(x,np.cos(i*x))

plt.show()

3、效果图


Python之图表、二维码生成
图2
Python之图表、二维码生成
图3

二、生成三维图表

1、在上面的基础包上增加一条:from mpl_toolkits.mplot3d import Axes3D

实例代码如下:

#coding:utf-8

importnumpyasnp

importmatplotlib.pyplotasplt

frommpl_toolkits.mplot3dimportAxes3D

#三维图

fig = plt.figure()

ax = Axes3D(fig)

X = np.arange(-4,4,0.5)  #第一个参数为起点,第二个参数为终点,第三个参数为步长

Y = np.arange(-4,4,0.5)

X,Y = np.meshgrid(X,Y)  #接收两个一维数组,并产生两个二维矩阵

R = np.sqrt(X**2+ Y**2)  #返回数字x的平方根。

Z = np.sin(R)   #对R元素取正弦

# 具体函数方法可用 help(function) 查看,如:help(ax.plot_surface)

ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap='rainbow')  #绘面

plt.show()

其中:ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap='rainbow')    表示绘面

ax.scatter(x[1000:4000],y[1000:4000],z[1000:4000],c='r')    表示绘点

2、效果图

Python之图表、二维码生成
图4

参考网址:1、各种3d画图参考网站

                     2、其他种类图参考网站

三、生成二维码

1、生成二维码的步骤

    1>. 创建QRCode对象

    2>. add_data()添加数据

    3>. make_image()创建二维码(返回im类型的图片对象)

    4>. 自动打开图片,im.show()

首先安装qrcode包,如下

Python之图表、二维码生成
图5

2、手动输入网址并将网站URL地址生成二维码图片,以.png的形式保存图片到本地文件夹,自动显示生成结果。

# -*- coding: utf-8-*-

importqrcode

qr = qrcode.QRCode(

        version=1,# 二维码矩阵尺寸

        error_correction=qrcode.constants.ERROR_CORRECT_H,# 二维码容错率

        box_size=10,# 二维码中每个Box的像素值

        border=4,# 二维码与图片边界的距离,默认为4

)

data =input('please input string:')

img_file =r'D:\work\test\py_qrcode.png'

img = qrcode.make(data)

img.save(img_file)# 图片数据保存至文件夹内

img.show()# 显示二维码图片

其中:

version:一个整数,范围为1到40,表示二维码的大小(最小值是1,是个12×12的矩阵),如果想让程序自动生成,将值设置为 None 并使用 fit=True 参数即可。

error_correction:二维码的纠错范围,可以选择4个常量

ERROR_CORRECT_L7%以下的错误会被纠正

ERROR_CORRECT_M (default)15%以下的错误会被纠正

ERROR_CORRECT_Q   25%以下的错误会被纠正

ERROR_CORRECT_H.30%以下的错误会被纠正

boxsize:每个点(方块)中的像素个数

border:二维码距图像外围边框距离,默认为4,而且相关规定最小为4

3、实验效果:

Python之图表、二维码生成
图6
上一篇:在Silverlight中使用Socket进行通信(3)简单的文本聊天工具


下一篇:Silverlight实用窍门系列:14.Visifire图表控件的使用一(图表的创建和基础使用)