python scatter散点图用循环分类法加图例


Posted in Python onMarch 19, 2019

本文实例为大家分享了python scatter散点图用循环分类法加图例,供大家参考,具体内容如下

import matplotlib.pyplot as plt
import kNN
 
plt.rcParams['font.sans-serif']=['Simhei']
plt.rcParams['axes.unicode_minus']=False
 
datingDataMat, datingLabels = kNN.file2matrix('datingTestSet2.txt')
 
plt.figure()
type1_x = []  #一共有3类,所以定义3个空列表准备接受数据
type1_y = []
type2_x = []
type2_y = []
type3_x = []
type3_y = []
 
for i in range(len(datingLabels)):     #1000组数据,i循环1000次
  if datingLabels[i] == '1':        #根据标签进行数据分类,注意标签此时是字符串
    type1_x.append(datingDataMat[i][0]) #取的是样本数据的第一列特征和第二列特征
    type1_y.append(datingDataMat[i][1])
 
  if datingLabels[i] == '2':
    type2_x.append(datingDataMat[i][0])
    type2_y.append(datingDataMat[i][1])
 
  if datingLabels[i] == '3':
    type3_x.append(datingDataMat[i][0])
    type3_y.append(datingDataMat[i][1])
 
plt.scatter(type1_x, type1_y, s=20, c='r', label='不喜欢')
plt.scatter(type2_x, type2_y, s=40, c='b', label='魅力一般')
plt.scatter(type3_x, type3_y, s=60, c='k', label='极具魅力')
 
plt.legend()
plt.show()

用面向对象的写法:

import matplotlib.pyplot as plt
import kNN
 
plt.rcParams['font.sans-serif']=['Simhei']
plt.rcParams['axes.unicode_minus']=False
 
datingDataMat, datingLabels = kNN.file2matrix('datingTestSet2.txt')
 
plt.figure()
axes = plt.subplot(111)
 
type1_x = []
type1_y = []
type2_x = []
type2_y = []
type3_x = []
type3_y = []
 
for i in range(len(datingLabels)):
  if datingLabels[i] == '1':
    type1_x.append(datingDataMat[i][0])
    type1_y.append(datingDataMat[i][1])
 
  if datingLabels[i] == '2':
    type2_x.append(datingDataMat[i][0])
    type2_y.append(datingDataMat[i][1])
 
  if datingLabels[i] == '3':
    type3_x.append(datingDataMat[i][0])
    type3_y.append(datingDataMat[i][1])
 
type1 = axes.scatter(type1_x, type1_y, s=20, c='r')
type2 = axes.scatter(type2_x, type2_y, s=40, c='b')
type3 = axes.scatter(type3_x, type3_y, s=60, c='k')
 
plt.legend((type1, type2, type3), ('不喜欢', '魅力一般', '极具魅力'))
plt.show()

python scatter散点图用循环分类法加图例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 判断一个进程是否存在
Apr 09 Python
python万年历实现代码 含运行结果
May 20 Python
获取python文件扩展名和文件名方法
Feb 02 Python
Python切片操作实例分析
Mar 16 Python
Python实现的FTP通信客户端与服务器端功能示例
Mar 28 Python
python3+PyQt5实现支持多线程的页面索引器应用程序
Apr 20 Python
Python实现的排列组合、破解密码算法示例
Apr 12 Python
Python 一键制作微信好友图片墙的方法
May 16 Python
linux环境下Django的安装配置详解
Jul 22 Python
Python使用get_text()方法从大段html中提取文本的实例
Aug 27 Python
浅谈python已知元素,获取元素索引(numpy,pandas)
Nov 26 Python
python内置进制转换函数的操作
Jun 02 Python
python使用matplotlib画柱状图、散点图
Mar 18 #Python
matplotlib实现区域颜色填充
Mar 18 #Python
Python函数定义及传参方式详解(4种)
Mar 18 #Python
Python中super函数用法实例分析
Mar 18 #Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
Mar 18 #Python
python+pyqt5编写md5生成器
Mar 18 #Python
python+pyqt5实现图片批量缩放工具
Mar 18 #Python
You might like
提升PHP执行速度全攻略(上)
2006/10/09 PHP
php模板中出现空行解决方法
2011/03/08 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
2013/08/10 PHP
再谈PHP中单双引号的区别详解
2016/06/12 PHP
Laravel+Intervention实现上传图片功能示例
2019/07/09 PHP
JavaScript更改class和id的方法
2008/10/10 Javascript
利用js的Node遍历找到repeater的一个字段实例介绍
2013/04/25 Javascript
ExtJs纵坐标值重复问题的解决方法
2014/02/27 Javascript
js动态拼接正则表达式的两种方法
2014/03/04 Javascript
JavaScript中输出标签的方法
2014/08/27 Javascript
AngularJS入门教程之AngularJS表达式
2016/04/18 Javascript
利用n 升级工具升级Node.js版本及在mac环境下的坑
2017/02/15 Javascript
vue-dialog的弹出层组件
2020/05/25 Javascript
微信小程序 共用变量值的实现
2017/07/12 Javascript
SVG动画vivus.js库使用小结(实例代码)
2017/09/14 Javascript
Angular中管道操作符(|)的使用方法
2017/12/15 Javascript
javascript变量提升和闭包理解
2018/03/12 Javascript
关于js陀螺仪的理解分析
2019/04/11 Javascript
es6 super关键字的理解与应用实例分析
2020/02/15 Javascript
Vue初始化中的选项合并之initInternalComponent详解
2020/06/11 Javascript
jQuery实现简单全选框
2020/09/13 jQuery
[55:45]DOTA2上海特级锦标赛D组败者赛 Liquid VS COL第一局
2016/02/28 DOTA
重命名批处理python脚本
2013/04/05 Python
Python常用列表数据结构小结
2014/08/06 Python
python实现excel读写数据
2021/03/02 Python
Python中的二维数组实例(list与numpy.array)
2018/04/13 Python
Python+selenium实现自动循环扔QQ邮箱漂流瓶
2018/05/29 Python
python中对_init_的理解及实例解析
2019/10/11 Python
Python3 pywin32模块安装的详细步骤
2020/05/26 Python
电力公司个人求职信范文
2014/02/04 职场文书
大学自我评价
2014/02/12 职场文书
初二学习计划书范文
2014/04/27 职场文书
班级学习计划书
2014/04/27 职场文书
2014年学校工作总结
2014/11/20 职场文书
离婚民事起诉状
2015/08/03 职场文书
Nginx使用X-Accel-Redirect实现静态文件下载的统计、鉴权、防盗链、限速等
2021/04/04 Servers