Python 数据挖掘(三) matplotlib模块 简单使用

Python 数据挖掘(三) matplotlib模块 简单使用,第1张

1.matplotlib

是一个作图模块,解决可视化问题

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()
结果:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/571480.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存