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之不要红头文件(2)
Sep 28 Python
理解Python中的With语句
Feb 02 Python
Centos Python2 升级到Python3的简单实现
Jun 21 Python
简单谈谈python中的Queue与多进程
Aug 25 Python
用python实现简单EXCEL数据统计的实例
Jan 24 Python
Python smtplib实现发送邮件功能
May 22 Python
Python3.6.x中内置函数总结及讲解
Feb 22 Python
Python3 itchat实现微信定时发送群消息的实例代码
Jul 12 Python
python爬取本站电子书信息并入库的实现代码
Jan 20 Python
Python2及Python3如何实现兼容切换
Sep 01 Python
Python Opencv实现单目标检测的示例代码
Sep 08 Python
Python爬虫入门教程02之笔趣阁小说爬取
Jan 24 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 session_set_save_handler 函数的用法(mysql)
2013/06/29 PHP
php实现水仙花数的4个示例分享
2014/04/08 PHP
php生成静态html页面的方法(2种方法)
2015/09/14 PHP
Laravel相关的一些故障解决
2020/08/19 PHP
JavaScript检查弹出窗口是否被阻拦的方法技巧
2015/03/13 Javascript
基于jquery实现瀑布流布局
2020/06/28 Javascript
JS实现简单的二维矩阵乘积运算
2016/01/26 Javascript
node.js 和HTML5开发本地桌面应用程序
2016/12/13 Javascript
微信小程序 MD5加密登录密码详解及实例代码
2017/01/12 Javascript
使用vue点击li,获取当前点击li父辈元素的属性值方法
2018/09/12 Javascript
JS div匀速移动动画与变速移动动画代码实例
2019/03/26 Javascript
Python单例模式实例分析
2015/01/14 Python
python使用socket向客户端发送数据的方法
2015/04/29 Python
在Python的web框架中中编写日志列表的教程
2015/04/30 Python
详细介绍Python进度条tqdm的使用
2019/07/31 Python
pytorch实现用Resnet提取特征并保存为txt文件的方法
2019/08/20 Python
TensorFlow学习之分布式的TensorFlow运行环境
2020/02/05 Python
Python实现名片管理系统
2020/02/14 Python
python递归函数求n的阶乘,优缺点及递归次数设置方式
2020/04/02 Python
如何使用scrapy中的ItemLoader提取数据
2020/09/30 Python
Python try except else使用详解
2021/01/12 Python
关于HTML5 Placeholder新标签低版本浏览器下不兼容的问题分析及解决办法
2016/01/27 HTML / CSS
俄罗斯便宜的在线服装商店:GroupPrice
2020/04/10 全球购物
铭立家具面试题
2012/12/06 面试题
什么是makefile? 如何编写makefile?
2013/01/02 面试题
警察群众路线整改措施
2014/09/26 职场文书
支部书记四风问题对照检查材料
2014/10/04 职场文书
2014年财务科工作总结
2014/11/11 职场文书
西湖英语导游词
2015/02/06 职场文书
初中英语教师个人工作总结
2015/02/09 职场文书
慰问信的写作格式及范文!
2019/06/24 职场文书
简历中的自我评价应该这样写!
2019/07/12 职场文书
Vue实现tab导航栏并支持左右滑动功能
2021/06/28 Vue.js
深入浅出的讲解:信号调制到底是如何实现的
2022/02/18 无线电
sql时间段切分实现每隔x分钟出一份高速门架车流量
2022/02/28 SQL Server
python数字图像处理数据类型及颜色空间转换
2022/06/28 Python