从文本文件中解析数据并绘制散点图

txt文件中是1000行数据,每一行有三个特征,最后一个是标签。

格式如下图:

 

 现要将数据提取出特征和标签,并在最后利用提取到的两个特征绘制了散点图。代码如下:

 1 from numpy import *
 2 import matplotlib
 3 import matplotlib.pyplot as plt
 4 
 5 def file2matrix(filename):
 6     fr=open(filename)
 7     arrayOLines=fr.readlines()#读取文件
 8     numberOFLines=len(arrayOLines)#文件行数
 9     returnMat=zeros((numberOFLines,3))#文件行数*3的矩阵
10     classLabelVector=[]
11     index=0
12     for line in arrayOLines:
13         line=line.strip()#截掉回车符
14         listFormLine=line.split('\t')#按照制表符划分
15         returnMat[index,:]=listFormLine[0:3]#取每行的前三个元素
16         classLabelVector.append(int(listFormLine[-1]))#最后一个元素作为标签
17         index+=1
18     return returnMat,classLabelVector
19 
20 datingDataMat,datingLabels=file2matrix('datingTestSet2.txt')
21 fig=plt.figure()#Figure实例
22 ax=fig.add_subplot(111)#绘制子图,三个参数分别表示子图总行数,总列数以及子图位置,本例只画了一个。
23 ax.scatter(datingDataMat[:,1],datingDataMat[:,2],15.0*array(datingLabels),15.0*array(datingLabels))#画散点图,利用第二列及第三列数据。
24 plt.show()

散点图:

 

 

posted @ 2019-11-22 10:51  glam  阅读(1038)  评论(0)    收藏  举报