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 相关文章推荐
python映射列表实例分析
Jan 26 Python
利用Python yagmail三行代码实现发送邮件
May 11 Python
Tensorflow 实现修改张量特定元素的值方法
Jul 30 Python
python2.7 安装pip的方法步骤(管用)
May 05 Python
python 并发编程 阻塞IO模型原理解析
Aug 20 Python
Django中的session用法详解
Mar 09 Python
Django高并发负载均衡实现原理详解
Apr 04 Python
Keras实现将两个模型连接到一起
May 23 Python
Pytest单元测试框架如何实现参数化
Sep 05 Python
Python调用Redis的示例代码
Nov 24 Python
Python+Appium实现自动化清理微信僵尸好友的方法
Feb 04 Python
Pyhton模块和包相关知识总结
May 12 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
使用字符串函数输出整数化的PHP版本号
2006/10/09 PHP
深入PHP中慎用双等于(==)的详解
2013/06/06 PHP
PHP中spl_autoload_register函数的用法总结
2013/11/07 PHP
PHP调用C#开发的dll类库方法
2014/07/28 PHP
laravel 模型查询按照whereIn排序的示例
2019/10/16 PHP
PHP7创建COOKIE和销毁COOKIE的实例方法
2020/02/03 PHP
重定向实现代码
2006/11/20 Javascript
用javascript实现在小方框中浏览大图的代码
2007/08/14 Javascript
javascript加号"+"的二义性说明
2013/03/04 Javascript
在js文件中如何获取basePath处理js路径问题
2013/07/10 Javascript
js获取判断上传文件后缀名的示例代码
2014/02/19 Javascript
javascript日期操作详解(脚本之家整理)
2015/09/05 Javascript
使用BootStrap实现表格隔行变色及hover变色并在需要时出现滚动条
2017/01/04 Javascript
浅谈基于Vue.js的移动组件库cube-ui
2017/12/20 Javascript
vue+mock.js实现前后端分离
2019/07/24 Javascript
JS画布动态实现黑客帝国背景效果
2020/11/08 Javascript
[41:37]DOTA2北京网鱼队选拔赛——冲击职业之路
2015/04/13 DOTA
python3.6利用pyinstall打包py为exe的操作实例
2018/10/31 Python
Python中的集合介绍
2019/01/28 Python
解决Python正则表达式匹配反斜杠''\''问题
2019/07/17 Python
Python实现一个数组除以一个数的例子
2019/07/20 Python
PyTorch笔记之scatter()函数的使用
2020/02/12 Python
python进度条显示-tqmd模块的实现示例
2020/08/23 Python
Django项目创建及管理实现流程详解
2020/10/13 Python
python判断all函数输出结果是否为true的方法
2020/12/03 Python
Python爬虫自动化爬取b站实时弹幕实例方法
2021/01/26 Python
石油工程专业毕业生求职信
2014/04/13 职场文书
门店业绩提升方案
2014/06/08 职场文书
高校群众路线教育实践活动剖析材料
2014/10/10 职场文书
先进学校事迹材料
2014/12/30 职场文书
党员自我评价2015
2015/03/03 职场文书
高二英语教学反思
2016/03/03 职场文书
《火纹风花雪月无双》预告“神秘雇佣兵” 紫发剑客
2022/04/13 其他游戏
服务器间如何实现文件共享
2022/05/20 Servers
Linux中各个目录的作用与内容
2022/06/28 Servers
前端框架ECharts dataset对数据可视化的高级管理
2022/12/24 Javascript