是一个作图模块,解决可视化问题
2.折线图与散点图# 折线图/散点图 plot来绘制
# 导入模块
import matplotlib.pylab as pyl
import numpy as npy
x=[1,2,3,4,8]
y=[5,7,8,11,15]
# pyl.plot(x,y)#plot(x轴数据,y轴数据,展现形式)默认是折线图
# show能够将绘制好的图展现出来
# o代表的是散点图
pyl.plot(x,y,'o')
# 使用多个plot会叠加起来
# 可以将颜色和图类型稽核在一起
pyl.plot(x,y,'oy')
pyl.show()
# 绘制虚线
pyl.plot(x,y,'--')
pyl.show()
'''
例子:
pyl.plot(x,y)
x2=[1,3,6,8,10,12,19]
y2=[1,6,9,10,19,23,35]
pyl.plot(x2,y2)#绘制多条线段
pyl.title("show")#代表标题
pyl.xlabel("ages")#代表x轴的标签
pyl.ylabel("temp")#代表y轴的标签
pyl.xlim(0,20)#设置x轴的范围
pyl.ylim(0,40)#设置y轴的范围
pyl.show()
'''
3.散点图例子
import numpy as npy
import matplotlib.pyplot as pyl
from matplotlib.font_manager import FontProperties
font_set=FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=12)
# 随机生成一个标准正态分布
data=npy.random.standard_normal((500,2))
'''
原因是matplotlib.pyplot在显示时无法找到合适的字体。
先把需要的字体(在系统盘C盘的windows下的fonts目录内)添加到FontProperties中。
'''
# 绘制散点图
pyl.figure(figsize=(8,5))#表示绘制图形的画板尺寸为8*5
# 表示绘制散点图,且为红色圆标记
# pyl.plot(data[:,0],data[:,1],'ro')
pyl.scatter(data[:,0],data[:,1],marker='o',c='g')
pyl.grid(True)#表示图形添加网格
pyl.xlabel('标准正态分布的第一行',FontProperties=font_set)
pyl.ylabel('标准正态分布的第二行',FontProperties=font_set)
pyl.title('Scatter Plot')
pyl.show()
结果:
# 绘制散点图(色彩可视化)
import numpy as npy
import matplotlib.pyplot as pyl
from matplotlib.font_manager import FontProperties
font_set=FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=12)
# 随机生成一个标准正态分布
data=npy.random.standard_normal((500,2))
# 随机生成一个第三维度的数据集,取值在0-10之间的整数
color=npy.random.randint(0,10,len(data))
pyl.figure(figsize=(8,5))
# 表示颜色数据来源于第三维度的c
pyl.scatter(data[:,0],data[:,1],marker='o',c=color)
pyl.colorbar()#
pyl.grid(True)
pyl.xlabel('标准正态分布的第一行',FontProperties=font_set)
pyl.ylabel('标准正态分布的第二行',FontProperties=font_set)
pyl.title('Scatter Plot')
pyl.show()
结果:
注意事项: 绘图title,xlabel,ylabel出现中文乱码 原因是matplotlib.pyplot在显示时无法找到合适的字体。
先把需要的字体(在系统盘C盘的windows下的fonts目录内)添加到FontProperties中。
4.直方图例子
# -*- coding:utf-8 -*-
# 两个数据集的直方图
import numpy as npy
import matplotlib.pyplot as pyl
from matplotlib.font_manager import FontProperties
font_set=FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=12)
# 随机生成一个标准正态分布
data=npy.random.standard_normal((500,2))
pyl.figure(figsize=(8,5))
# 使用data绘制直方图,数据组数有30个,标签分别使用'1st'和'2nd'
pyl.hist(data,bins=30,label=['1st','2nd'])
pyl.grid(True)
# 最佳位置显示图例
pyl.legend(loc=0)
pyl.xlabel('Value')
pyl.ylabel('Frequency')
pyl.title('Histogram')
pyl.show()
结果:
# -*- coding:utf-8 -*-
# 两个数据集堆叠的直方图
import numpy as npy
import matplotlib.pyplot as pyl
# 随机生成一个标准正态分布
data=npy.random.standard_normal((500,2))
pyl.figure(figsize=(8,5))
pyl.hist(data,bins=20,label=['1st','2nd'],color=['b','m'],stacked=True,rwidth=0.8)
# 使用data绘制直方图,数据组数有20个,标签分别使用'1st'和'2nd'
# 参数stacked=True表示堆叠的直方图,rwidth=0.8表示修改条块的相对宽度为0.8,color=['b','m']表示颜色分别取蓝色、品红
pyl.grid(True)
# 表示最佳位置显示图例
pyl.legend(loc=0)
pyl.xlabel('Value')
pyl.ylabel('Frequency')
# 柱状图
pyl.title('Histogram')
pyl.show()
结果:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)