一、模块导入:
import matplotlib.pylab as pyl #用于可视化
import numpy as npy #用于提供数组支持
二、折线图、散点图
(1)折线图:
#注意xy数据要个数相同以对应
x=[1,2,3,4,8]
y=[4,7,2,1,6]
#plot(x轴的数据,y轴的数据,展现的形式,默认是折线图)
pyl.plot(x,y)
(2)散点图:
x=[1,2,3,4,8]
y=[4,7,2,1,6]
#plot(x轴的数据,y轴的数据,展现的形式,o代表散点图)
pyl.plot(x,y,'o')
(3)修改折线图与散点图的样式:
1)修改折线图或散点图的符号颜色:
c-cyan-青色
r-red-红色
m-magente-品红
g-green-绿色
b-blue-蓝色
y-yellow-黄色
k-black-黑色
w-white-白色
如:
#红色散点图
pyl.plot(x,y,'ro')
#红色折线图
pyl.plot(x,y,'r')
2)修改折线图线的样式:
- 直线
-- 虚线
-. -.形式线
: 细小虚线
如:
pyl.plot(x,y,":")
3)修改散点图点符号样式:
o - 默认的圆形
s - 方形
h - 六角形1
H - 六角形2
* - 星形
+ - 加号
x - x形
d - 菱形1
D - 菱形2
p - 五角形
(4)修改图的信息:
#图名
pyl.title("show")
#xy轴名称
pyl.xlabel("ages")
pyl.ylabel("temp")
#xy轴长度
pyl.xlim(0,50)
pyl.ylim(0,40)
(5)展示可视化图:
pyl.show()
注意若图生成了多次,则多个生成的图是叠加显示的,如下图:
三、随机数的生成:
#随机数的生成
import numpy as npy
data=npy.random.random_integers(1,20,10)#整数随机数(最小值,最大值,个数)
print(data)
data2=npy.random.normal(5.0,2.0,10)#生成具有正态分布的随机数,参数(均数,西格玛,个数)
print(data2)
四、直方图:
(1)生成
#生成随机数以作示例
data=npy.random.normal(1.0,10.0,1000)
#生成直方图
pyl.hist(data)
(2)修改参数:
#(最大值,最小值,步长)
style=npy.arange(0,30,2)
# 应用参数设置
pyl.hist(data,style)
(3)修改样式:
bins: 直方图的柱数,可选项,默认为10
normed: 是否将得到的直方图向量归一化。默认为0
facecolor: 直方图颜色
edgecolor: 直方图边框颜色
alpha: 透明度
histtype: 直方图类型,‘bar’, ‘barstacked’, ‘step’, ‘stepfilled’
如:
pyl.hist(data4,style,histtype='barstacked',edgecolor='black')
(4)返回值:
n: 直方图向量,是否归一化由参数normed设定
bins: 返回各个bin的区间范围
patches: 返回每个bin里面包含的数据,是一个list
如:
n, bins, patches = plt.hist(arr, bins=256, normed=1,edgecolor='None',facecolor='red')
五、关于划分子图:
使用 pyl.subplot(行,列,当前区域)方法:
结构:
pyl.subplot(xxx)
。。。
图1代码
。。。
pyl.subplot(xxx)
。。。。
图2代码
。。。。
pyl.subplot(xxx)
。。。。
图3代码
。。。。
pyl.show()
如:
pyl.subplot(2,2,1)
x1=[1,3,4,5,6]
y1=[3,35,53,21,23]
pyl.plot(x1,y1)
pyl.subplot(2,2,2)
x2=[1,3,4,5,6]
y2=[3,5,3,1,7]
pyl.plot(x1,y1,'o')
pyl.subplot(2,1,2)
data4=npy.random.random_integers(1,25,1000)
pyl.hist(data4,histtype='stepfilled')
pyl.show()
结果: