Python中scatter函数参数及用法详解


Posted in Python onNovember 08, 2017

最近开始学习Python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下:

1、scatter函数原型

Python中scatter函数参数及用法详解

2、其中散点的形状参数marker如下:

Python中scatter函数参数及用法详解

3、其中颜色参数c如下:

Python中scatter函数参数及用法详解

4、基本的使用方法如下:

#导入必要的模块 
import numpy as np 
import matplotlib.pyplot as plt 
#产生测试数据 
x = np.arange(1,10) 
y = x 
fig = plt.figure() 
ax1 = fig.add_subplot(111) 
#设置标题 
ax1.set_title('Scatter Plot') 
#设置X轴标签 
plt.xlabel('X') 
#设置Y轴标签 
plt.ylabel('Y') 
#画散点图 
ax1.scatter(x,y,c = 'r',marker = 'o') 
#设置图标 
plt.legend('x1') 
#显示所画的图 
plt.show()

结果如下:

Python中scatter函数参数及用法详解

5、当scatter后面参数中数组的使用方法,如s,当s是同x大小的数组,表示x中的每个点对应s中一个大小,其他如c,等用法一样,如下:

(1)、不同大小

#导入必要的模块 
import numpy as np 
import matplotlib.pyplot as plt 
#产生测试数据 
x = np.arange(1,10) 
y = x 
fig = plt.figure() 
ax1 = fig.add_subplot(111) 
#设置标题 
ax1.set_title('Scatter Plot') 
#设置X轴标签 
plt.xlabel('X') 
#设置Y轴标签 
plt.ylabel('Y') 
#画散点图 
sValue = x*10 
ax1.scatter(x,y,s=sValue,c='r',marker='x') 
#设置图标 
plt.legend('x1') 
#显示所画的图 
plt.show()

Python中scatter函数参数及用法详解

(2)、不同颜色

#导入必要的模块 
import numpy as np 
import matplotlib.pyplot as plt 
#产生测试数据 
x = np.arange(1,10) 
y = x 
fig = plt.figure() 
ax1 = fig.add_subplot(111) 
#设置标题 
ax1.set_title('Scatter Plot') 
#设置X轴标签 
plt.xlabel('X') 
#设置Y轴标签 
plt.ylabel('Y') 
#画散点图 
cValue = ['r','y','g','b','r','y','g','b','r'] 
ax1.scatter(x,y,c=cValue,marker='s') 
#设置图标 
plt.legend('x1') 
#显示所画的图 
plt.show()

结果:

Python中scatter函数参数及用法详解

(3)、线宽linewidths

#导入必要的模块 
import numpy as np 
import matplotlib.pyplot as plt 
#产生测试数据 
x = np.arange(1,10) 
y = x 
fig = plt.figure() 
ax1 = fig.add_subplot(111) 
#设置标题 
ax1.set_title('Scatter Plot') 
#设置X轴标签 
plt.xlabel('X') 
#设置Y轴标签 
plt.ylabel('Y') 
#画散点图 
lValue = x 
ax1.scatter(x,y,c='r',s= 100,linewidths=lValue,marker='o') 
#设置图标 
plt.legend('x1') 
#显示所画的图 
plt.show()

Python中scatter函数参数及用法详解

注:  这就是scatter基本的用法。

PS:下面举个示例

本文记录了python中的数据可视化——散点图scatter,令x作为数据(50个点,每个30维),我们仅可视化前两维。labels为其类别(假设有三类)。

这里的x就用random来了,具体数据具体分析。

label设定为[1:20]->1, [21:35]->2, [36:50]->3,(python中数组连接方法:先强制转为list,用+,再转回array)

用matplotlib的scatter绘制散点图,legend和matlab中稍有不同,详见代码。

x = rand(50,30) 
from numpy import * 
import matplotlib 
import matplotlib.pyplot as plt 
 
#basic 
f1 = plt.figure(1) 
plt.subplot(211) 
plt.scatter(x[:,1],x[:,0]) 
 
# with label 
plt.subplot(212) 
label = list(ones(20))+list(2*ones(15))+list(3*ones(15)) 
label = array(label) 
plt.scatter(x[:,1],x[:,0],15.0*label,15.0*label) 
 
# with legend 
f2 = plt.figure(2) 
idx_1 = find(label==1) 
p1 = plt.scatter(x[idx_1,1], x[idx_1,0], marker = 'x', color = 'm', label='1', s = 30) 
idx_2 = find(label==2) 
p2 = plt.scatter(x[idx_2,1], x[idx_2,0], marker = '+', color = 'c', label='2', s = 50) 
idx_3 = find(label==3) 
p3 = plt.scatter(x[idx_3,1], x[idx_3,0], marker = 'o', color = 'r', label='3', s = 15) 
plt.legend(loc = 'upper right')

result:

figure(1):

Python中scatter函数参数及用法详解

figure(2):

Python中scatter函数参数及用法详解

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

Python 相关文章推荐
Cpy和Python的效率对比
Mar 20 Python
举例简单讲解Python中的数据存储模块shelve的用法
Mar 03 Python
python django 实现验证码的功能实例代码
May 18 Python
用Python将结果保存为xlsx的方法
Jan 28 Python
详解Python 解压缩文件
Apr 09 Python
Python基于机器学习方法实现的电影推荐系统实例详解
Jun 25 Python
python re.sub()替换正则的匹配内容方法
Jul 22 Python
centos7之Python3.74安装教程
Aug 15 Python
Python应用自动化部署工具Fabric原理及使用解析
Nov 30 Python
Selenium Webdriver元素定位的八种常用方式(小结)
Jan 13 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
Feb 22 Python
OpenCV-Python实现图像平滑处理操作
Jun 08 Python
python实现人脸识别代码
Nov 08 #Python
python生成随机图形验证码详解
Nov 08 #Python
Python爬虫实例爬取网站搞笑段子
Nov 08 #Python
python执行使用shell命令方法分享
Nov 08 #Python
python通过socket实现多个连接并实现ssh功能详解
Nov 08 #Python
Python基础练习之用户登录实现代码分享
Nov 08 #Python
python实现简单中文词频统计示例
Nov 08 #Python
You might like
一个取得文件扩展名的函数
2006/10/09 PHP
关于在php.ini中添加extension=php_mysqli.dll指令的说明
2007/06/14 PHP
PHP实现简单实用的分页类代码
2016/04/08 PHP
PHP实现百度人脸识别
2019/05/06 PHP
由浅到深了解JavaScript类
2006/09/08 Javascript
JS getMonth()日期函数的值域是0-11
2010/02/15 Javascript
js变换显示图片的实例
2013/04/16 Javascript
Jquery事件的连接使用示例
2013/06/18 Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
2014/07/30 Javascript
JavaScript中合并数组的N种方法
2014/09/16 Javascript
Bootstrap三种表单布局的使用方法
2016/06/21 Javascript
使用DeviceOne实现微信小程序功能
2016/12/29 Javascript
Angular.Js之Scope作用域的学习教程
2017/04/27 Javascript
vue如何自动化打包测试环境和正式环境的dist/test文件
2019/06/06 Javascript
python中pycurl库的用法实例
2014/09/30 Python
python实现发送邮件功能
2017/07/22 Python
python使用 zip 同时迭代多个序列示例
2019/07/06 Python
Django 查询数据库并返回页面的例子
2019/08/12 Python
python双向链表原理与实现方法详解
2019/12/03 Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
2020/02/07 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
2021/01/24 Python
HTML5之SVG 2D入门6—视窗坐标系与用户坐标系及变换概述
2013/01/30 HTML / CSS
移动HTML5前端框架—MUI的使用
2017/12/18 HTML / CSS
英国银首饰公司:e&e Jewellery
2021/02/11 全球购物
总经理职责范文
2013/11/08 职场文书
上课迟到检讨书100字
2014/01/11 职场文书
民族团结先进个人材料
2014/02/05 职场文书
留学经费担保书
2014/05/12 职场文书
水利水电建筑施工应届生求职信
2014/07/04 职场文书
委托书如何写
2014/08/30 职场文书
高中学生自我评价范文
2014/09/23 职场文书
初中家长评语大全
2014/12/26 职场文书
冲出亚马逊观后感
2015/06/03 职场文书
2019年度开业庆典祝福语大全!
2019/07/05 职场文书
Python机器学习之基础概述
2021/05/19 Python
Spring Boot 底层原理基础深度解析
2022/04/03 Java/Android