1、linspace
#coding:utf-8
import numpy as np
#[0,1]之间默认划为50个点
a=np.linspace(0, 1)
#[0,1]之间划分为10个点,
b=np.linspace(0,1,10)
print a
print b
print len(a) #50
print len(b) #10
2、random(random.random/rand/randn/seed)
#coding:utf-8
import numpy as np
#随机生成的数是固定的,第一个、第二个...都是固定的,每次都一样
np.random.seed(0)
a=np.random.randn(4)
print a
3、mgrid、ogrid (返回多维结构)
import numpy as np
#返回一维结构(两参数,默认间隔1,三参数,默认间隔是第三个参数,注意区间[1,7))
#若第三个参数是nj,包含开始和结束两点,共返回n个点,均分
a=np.mgrid[1:7] #[1,2,3,4,5,6]
print a
a=np.mgrid[1:7:5] #[1,6]
print a
a=np.mgrid[1:7:5j] #[1, 2.5, 4, 5.5, 7]
print a
#返回二维结构
b=np.mgrid[0:10:2,1:10:2]
print b
b=np.mgrid[1:5,1:3]
print b
#mgrid和ogrid一维使用是一致的,二维有点区别
#两个参数:第一个表示列,第二个表示行
#mgrid只是把列和行分别进行了扩展,得到了两个矩阵
#ogrid保留两个向量
c=np.ogrid[0:10:2,1:10:2]
print c
c=np.ogrid[1:5,1:3]
print c
'''
[[[0 0 0 0 0]
[2 2 2 2 2]
[4 4 4 4 4]
[6 6 6 6 6]
[8 8 8 8 8]]
[[1 3 5 7 9]
[1 3 5 7 9]
[1 3 5 7 9]
[1 3 5 7 9]
[1 3 5 7 9]]]
[[[1 1]
[2 2]
[3 3]
[4 4]]
[[1 2]
[1 2]
[1 2]
[1 2]]]
[array([[0],
[2],
[4],
[6],
[8]]), array([[1, 3, 5, 7, 9]])]
[array([[1],
[2],
[3],
[4]]), array([[1, 2]])]
'''
注意:区别mgrid和meshgrid的区别
'''
①传参形式不同
②返回结果不同(行列刚好相反)
④都是先扩展第一个参数
'''
a=np.array([1,2,3])
b=np.array([4,5])
print np.mgrid[1:3:3j,4:5:2j]
print np.meshgrid(b,a) #参数a和b可以任何形式矩阵,然后会被默认reshape成向量形式
'''
[[[ 1. 1.]
[ 2. 2.]
[ 3. 3.]]
[[ 4. 5.]
[ 4. 5.]
[ 4. 5.]]]
[array([[4, 5],
[4, 5],
[4, 5]]), array([[1, 1],
[2, 2],
[3, 3]])]
'''
4、c_、r_、column_stack、row_stack
import numpy as np
a=np.array([1,2,3]).reshape(1,3)
b=np.array([4,5]).reshape(1,2)
print np.column_stack((a,b))
print np.c_[a,b]
#两种方法进行列扩展和行扩展(保证矩阵是规范形式reshape)
a=np.array([[1,2,3],[4,5,6]])
b=np.array([7,8,9]).reshape(1,3)
print np.row_stack((a,b))
print np.r_[a,b]
'''
[[1 2 3 4 5]]
[[1 2 3]
[4 5 6]
[7 8 9]]
'''
5、title、xlabel、ylabel、plot、scatter、legend
①写入中文怎么处理
②一张图可以画多条曲线,怎么打标签(plot、scatter)
③怎么设置标签的区域和颜色(legend)
④画的是线图,还是散点(一个是散点,一个是把散点串起来)
import numpy as np
from matplotlib.font_manager import FontProperties
import matplotlib.pyplot as plt
#引入字体,画图中可以写入中文
font = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=14)
x=np.array([1,2,3])
y=np.array([1,2,3])
plt.plot(x,y,label='hqh')
plt.xlabel(u"x轴", fontproperties=font)
plt.ylabel(u'y轴', fontproperties=font)
plt.title(u"y=x的图像", fontproperties=font)
#打标签,可以在plot中打,也可以在legend中打(前者标签长度可以很长,后者只能一位)
leg=plt.legend('x',loc="upper center")
#设置颜色
leg.get_frame().set_facecolor("#00FFCC")
plt.show()
z=np.array([0,1,2])
plt.scatter(x,y,c=z)
plt.xlabel(u"x轴", fontproperties=font)
plt.ylabel(u'y轴', fontproperties=font)
plt.title(u"散点", fontproperties=font)
plt.show()