numpy使用详解 matplotlib绘图

创建矩阵

我们可以通过创建Python列表(list)的方式来创建Numpy矩阵,比如输入nparray=np.array([i for i in range(10)]),可以看到返回的结果是array([0,1,2,3,4,5,6,7,8,9])。同样,也可以通过Python列表的方式来修改值,比如输入nparray[0]=10
Numpy数组还封装了其他方法来创建矩阵。首先,我们介绍第一个方法np.zeros(从命名规则来看,这个方法就是用来创建数值都为0的向量),比如,我们输入: a = np.zeros(10) 可以看到结果为: array([ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]) 从上述结果可以看出,每一个0后面都有一个小数点,调用a.dtype会发现我们创建的这个向量的类型为dtype(‘float64’)。值得注意的是:在大部分图像识别算法开发中,我们使用的都是float64这个类型。如果希望在创建Numpy矩阵的时候强制规定一种类型,那么我们可以使用以下代码: np.zeros(10,dtype=int)

numpy的一些内置函数

np.random.randint(0,5,size=5) #注意是前闭后开,永远取不到5
我们也可以生成一个三行五列的整数矩阵,代码如下 np.random.randint(4,9,size=(3,5))
seed的作用:如果不希望每次生成的随机数都不固定,那么我们可以使用np.random.seed(1),随机种子使用数字1记录,这以后只要是用随机种子1生成的随机数就都是固定的。
我们也可以生成介于0~1之间的浮点数的向量或者矩阵,代码如下:
np.random.random(10) #生成0~1之间的浮点数,向量的长度为10
np.random.random((2,4)) #生成0~1之间的浮点数,二行四列的矩阵
·mean():计算矩阵元素的平均值;矩阵的计算结果为一个一维数组,需要指定行或者列。
·max():计算矩阵元素的最大值;矩阵的计算结果为一个一维数组,需要指定行或者列。
·median():计算矩阵元素的中位数。
x=np.random .randn(30)生成30 个随机参数并赋值给变量x
np.random.choice(100,10):从0-99之间随机生成10个数字
numpy.random.randn(d0,d1,…,dn) randn函数返回一个或一组样本,具有标准正态分布。

绘图

除了绘制线型图,利用Matp lotlib 强大的绘图库还能绘制散点图、直方图、饼图等常用的图形。
直方图:

import matplotlib.pyplot as plt
np. random.seed (42)
x = np.random.randn(1000)
plt.hist(x , bins=20 , color="g")
plt.title("Example")
plt.xlabel("x")
plt.ylabel ("Y")
plt.show()

bins 用于指定我们绘制的直方图条纹的数量。

在这里插入图片描述

标签折线图:

x = np.random.randn(30)
y = np.random.randn(30)

plt.title("Example")
plt.xlabel("x")
plt.ylabel("Y")
X, =plt.plot(x,"r--o")
Y, = plt.plot(y,"b-*")
plt.legend([X,Y] , ["X","Y"])
plt.show()

在这里插入图片描述

plt.xlabel (“Y”)、plt.ylabel (“Y”)和图例的显示代码plt.l egend ([X , Y] , [“X” ,“Y”]) ,传递给pit.legend 的是两个列表参数, 第1个列表参数是在图中实际使用的标记和线形, 第2 个列表参数是对应图例的文字描述。

“ c ”:指定散点图中绘制的参数点使用哪种颜色,使用“ g ” 表示设置为绿色。

猜你喜欢

转载自blog.csdn.net/qq_41358574/article/details/114215571