python中如何给散点图上面的特定点做标记
出处:http://blog.csdn.net/mg2flyingff/article/details/53415353
今天想在散点图的某些特定的点外面画圆圈标记,从下面的文章找到一些灵感,只要在原来的散点图上面给指点添加相应的标志,设置其透明度就可以实现该想法。
顺便复习下散点图的用法。
大家平时为了直观地显示数据的分布情况,在画散点图的时候,简单地把数据点用圆点标出来,像这样:
这样:
还有这样:
然而今天我想给大家展示的散点图,或许没有那么直观地反映数据的分布情况,不够实用,但是真的很美很艺术,每个的点的颜色和大小都不一样,形状也是多变的。比如五角星的散点图:
圆点的散点图:
Y形的散点图:
等等还有很多,那么这些漂亮的形状是怎么画出来的呢?其实代码很简单:
from numpy import *;N = 50 # 点的个数
x = np.random.rand(N) * 2 # 随机产生50个0~2之间的x坐标
y = np.random.rand(N) * 2 # 随机产生50个0~2之间的y坐标
colors = np.random.rand(N) # 随机产生50个0~1之间的颜色值
area = np.pi * (15 * np.random.rand(N))**2 # 点的半径范围:0~15
# 画散点图
plt.scatter(x, y, s=area, c=colors, alpha=0.5, marker=(9, 3, 30))
plt.show()
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
这里用到一个matplotlib.pyplot子库中画散点图的函数
matplotlib.pyplot.scatter(x, y, s=20, c=None, marker='o',
cmap=None, norm=None, vmin=None, vmax=None, alpha=None,
linewidths=None, verts=None, edgecolors=None, hold=None,
data=None, **kwargs)
这个函数接收的参数很多,有默认值的平时也不需要我们指定,是可选的,这次我们用到的除了基本的x ,y参数,还有c,s,alpha和marker,c就是为点指定的颜色数组,s是点的面积大小,alpha是点的颜色的透明度,marker是指定点标记的形状。在例子里指定透明度为0.5,c和s是随机生成的,我们要改变的是marker的值,marker有很多值可供选择,下表展示了在例子代码的基础上,改变marker的值后的效果:
marker | result |
---|---|
”.” | |
”,” | |
“o” | |
“v” | |
“^” | |
“<” | |
“>” | |
“1” | |
“2” | |
“3” | |
“4” | |
“8” | |
“s” | |
“p” | |
“*” | |
“h” | |
“H” | |
“+” | |
“x” | |
“D” | |
“d” | |
“ | ” |
“_” | |
“None” | 没错就是什么都没有。。。 |
“$…$” | |
(numsides, style, angle) eg:(9,0, 30) 注:numsides是边的个数, angle是旋转角度, style只有0,1,2,3四个值 |
|
(numsides, style, angle) eg:(9,1, 30) |
|
(numsides, style, angle) eg:(9,2, 30) |
|
(numsides, style, angle) eg:(9,3, 30) 注:此时numsides和angle的值自动被忽略 |
……
这么多种点的形状符号够我们用了吧~以后想用哪种查一下就好啦~
python中如何给散点图上面的特定点做标记相关推荐
- 如何在markdown(csdn)中打出某个字符上面的三角帽子符号
如何在markdown(csdn)中打出某个字符上面的三角帽子符号 f^\widehat{f}f 输入: $\widehat{f}$ 输出: f^\widehat{f}f
- 使用Matplotlib在Python中绘制三维散点图
什么是Matplotlib? Matplotlib是Python中的一个库,用于创建静态和动态动画,并使用其内置函数绘制.它有很多内置特性和内置分析工具,用于分析任何图形或图表. 如果我们想绘制任何三 ...
- python中的正则表达式是干嘛的_操作python中的正则表达式(上)
上次的爬虫最终获取了马蜂窝旅行评论页面的全部内容,其实很多都是无用信息,我们要进行筛选清洗,这就用到了正则表达式,在写爬虫后续之前先大概搞一下正则-- 先上代码吧,今天先搞一小部分: import r ...
- Python中MNE库的事件相关特定频段分析(MEG数据)
最近做运动想象分类的时候遇到一个问题就是分类结果始终不准,想从原始数据分析一下脑电数据,找了下MNE提供的examples.里面还真有一个按频带分析的例子,说实话打开这个例子最主要的原因是这个图看着比 ...
- 捋一捋Python中的Dict(上)
正式的Python专栏第28篇,同学站住,别错过这个从0开始的文章! 学委前面分享了tuple/list,在Python中还有一个非常常见的数据容器就是dict! 什么是dict? dict全称为di ...
- python中排序从小到大_Python实现对特定列表进行从小到大排序操作示例
本文实例讲述了Python实现对特定列表进行从小到大排序操作.分享给大家供大家参考,具体如下: 1.在系统内新建文件rizhireplacelist.txt root@kali:~# cd pytho ...
- python中怎样在图片上画线段_python 实现PIL模块在图片画线写字
图片上画线条 import sys from PIL import Image,ImageDraw im = Image.open("th.png") draw = ImageDr ...
- python打印指定行数的分割线_在Python中的分隔线上打印列表元素
我正在尝试使用以下方法打印出Python路径文件夹: import sys print sys.path 输出是这样的: >>> print sys.path ['.', '/usr ...
- render在python中的含义_python-/ render()上的Django TypeError获得了意外的...
当前在Azure上设置Django Web应用程序,并通过Git本地部署.我实际上还没有编写任何代码,当我使用以下命令启动开发服务器时 python3 manage.py runserver 并转到网 ...
最新文章
- OpenCV(一)图像读取与新建、图像显示、操作图像像素(2种涂色并比较算法优劣、输出RGB)
- [译] 解密 Airbnb 的数据科学部门如何构建知识仓库
- 软件项目开发流程RUP上
- 职业标准体系一般有几个层次划分_全国首个粤菜标准体系规划发布
- REST API解析
- 支持向量机实现鸢尾花数据集分类matlab
- mysql字符集排序规则_MySQL原理 - 字符集与排序规则
- 【远程沟通】“云答辩”“云招聘”双管齐下,解救“最难毕业生”
- matlab 垂直边缘检测,matlab 边缘检测
- Java经典设计模式:五大创建型模式
- 解决wordpress前后台非常卡的几个方法
- 学习大数据必须掌握哪些核心技术?
- 一个简单的Mastermind Game
- js base64 php,php中的base64decode 与js中的互相转换
- IDEA 创建 maven pom
- 调整物料的存货科目代码,会不会造成存货系统和总账对账不平?
- 如何启动Android SDK 1.5模拟器
- codeblocks配置glut
- 图像超分综述:超长文一网打尽图像超分的前世今生 (附核心代码)
- 蓝桥杯刷题冲刺 | 倒计时20天