您的位置:首页 > 其它

数据挖掘-K-近邻分类器-Iris数据集分析-根据花萼长宽分类-以散点图显示(一)

2017-01-29 22:29 375 查看
#   %load python_8_1.py     此命令以加载本脚本到到ipython中
# coding: utf-8

from sklearn import datasets
iris=datasets.load_iris()
#数据集描述信息
iris.DESCR
#iris数据集的数据
iris.data
#以上总共150组数据,对应以下150个结果
iris.target
#0代表Setosa  1代表Versicolour   2代表 Virginica
iris.target_names
#绘制散点图
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
from sklearn import datasets
#加载iris数据集
iris=datasets.load_iris()
#取出iris数据中的第0列,即表示花萼长度
x=iris.data[:,0]   #x轴
y=iris.data[:,1]  #y轴   花萼宽度
x
y
species=iris.target  #种类
#计算散点图x轴最小值,最大值
x_min,x_max=x.min() - .5, x.max() + .5
#计算散点图y轴最小值与最大值
y_min,y_max=y.min()-.5,y.max()+.5
#以下绘制散点图
plt.figure()

#matplot显示图例中的中文问题 :   https://www.zhihu.com/question/25404709/answer/67672003 import matplotlib.font_manager as fm
#mac中的字体问题请看: https://zhidao.baidu.com/question/161361596.html myfont = fm.FontProperties(fname='/Library/Fonts/Xingkai.ttc')

#图例中的中文处理
plt.legend(prop=myfont)

plt.title(u'鸢尾花分类预测_根据花萼长宽',fontproperties=myfont)
plt.scatter(x,y,c=species )
plt.xlabel(u'花萼长 sepal length',fontproperties=myfont)
plt.ylabel(u'花萼宽 sepal width',fontproperties=myfont)

plt.xlim(x_min,x_max)
plt.ylim(y_min,y_max)
plt.xticks(())
plt.yticks(())
plt.plot()

#将图表保存为png图片, 注意这句话必须在plot()之后,否则将得到一个空白图片
plt.savefig('python_8_1_鸢尾花分类预测_根据花萼长宽.png')

plt.show()
#shift+enter显示图表

#从显示的图形来看: Iris Setosa(山鸢尾)的蓝色数据点形成一组,与其它两种分开了.


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐