本文共 1296 字,大约阅读时间需要 4 分钟。
from sklearn import datasetsimport matplotlib.pyplot as pltdef get_data(): """ 从sklearn中获取鸢尾花的数据 :return: 鸢尾花数据的字典,字典中包括的key有:【'data', 'target', 'target_names', 'DESCR', 'feature_names'] 简单介绍一下: data就是(150, 4)的数据集,target表示1位数组,数字0~2表示分类, target_names表示分类名,DESCR表示对数据的描述 feature_names: 特征值名称 """ iris = datasets.load_iris() return irisdef draw_graph(iris_data): """ 获取两个维度的数据进行数据可视化,由于鸢尾花共有4个特征,在平面中只能绘制2个特征,所以获取特征1和特征2进行绘制 :param: 鸢尾花的数据集 :return: """ X = iris_data.data[:, :2] target_names = iris_data.target_names print(target_names) print(iris_data.feature_names ) y = iris_data.target plt.scatter(X[y == 0, 0], X[y == 0, 1], color='red', marker='o', label=target_names[0]) plt.scatter(X[y == 1, 0], X[y == 1, 1], color='blue', marker='*', label=target_names[1]) plt.scatter(X[y == 2, 0], X[y == 2, 1], color='green', marker='+', label=target_names[2]) plt.legend() plt.title(u'Distribution of 3 different irises in length and width') plt.show()if __name__ == '__main__': iris = get_data() draw_graph(iris)
运行结果:
方法学习:
1、在sklearn中所有的数据集都放在datasets模块里面,导入对应的数据直接用loadxx
2、在sklearn中load出来的数据是一个字典,直接可以用原始data.属性值获取对应的值,比如 data.feature_names就可以获取特征的名字
3、用matplotlib的时候, 多看官方文档
scatter表示随机的绘制点,marker也有不同的描述方法,可以在文档中看到