python可视化之颜色映射详解


Posted in Python onSeptember 15, 2021

本文主要介绍一下在学习可视化过程里遇到的一些情况

比如cmap=plt.cm.Blues的映射

import matplotlib.pyplot as plt
from random_walk import RandomWalk
# Keep making new walks, as long as the program is active.
while True:
    # Make a random walk.
    rw = RandomWalk(50_000)
    rw.fill_walk()
    # Plot the points in the walk.
    plt.style.use('classic')
    fig, ax = plt.subplots(figsize=(15, 9))
    point_numbers = range(rw.num_points)
    y_values=rw.y_values
    ax.scatter(rw.x_values, rw.y_values, c=y_values, cmap=plt.cm.Blues,
        edgecolors='none', s=1)
    # Emphasize the first and last points.
    ax.scatter(0, 0, c='green', edgecolors='none', s=100)
    ax.scatter(rw.x_values[-1], rw.y_values[-1], c='red', edgecolors='none',
        s=100)
    # Remove the axes.
    ax.get_xaxis().set_visible(False)
    ax.get_yaxis().set_visible(False)
    plt.show()
    keep_running = input("Make another walk? (y/n): ")
    if keep_running == 'n':
        break
ax.scatter(rw.x_values, rw.y_values, c=range(50000), cmap=plt.cm.Blues,

这里的c和cmap是一起使用的

c是一个列表,列表里面的数值不一定要按照大小顺序排列,但是数值的大小对应着颜色映射,数值本身越小,颜色越浅。而数值的位置对应着点的顺序,列表里面的第一个数(不管大小),对应着由x_values和y_values产生的点

这里的y_values是由随机漫步产生的,第一个点到最后一个点是连续变化的,这种随机漫步会导致,第一个点到最后一个点的位置规律是有迹可循的(比如y值是从小到大变化的),局部看上去是随机的,但是趋势不是,趋势是有规律的。

所以列表里面的数值大小不固定,可能是从小到大,也可能是从大到小,例如下面这里是从小到大排列的。第一个点对应的数值小,所以颜色浅,反之最后一个点数值大,颜色深。第一个点偏上,最后一个点偏下,说明y应该是逐渐变小的,那么y_values应该是从大到小,所以对应的点的颜色就是从深到浅。也就是说点的位置变化(如y值)有规律,那么颜色的变化也是有规律的。因为在使用c=y_values的时候,是根据点的y值来的。

总之,关键字实参c=point_numbers的列表里面数字的位置对应点的顺序,而数值的大小,对应颜色深浅。

python可视化之颜色映射详解

反之,如果c=y_values,第一个点到最后一个点的y值是从低到高的话,那么颜色是由浅到深的。

python可视化之颜色映射详解

这里的c=range(50000)的时候,数据是从小到大排列的,所以第一个点到最后一个点颜色从浅到深。点的位置变化有迹可循,颜色变化也有迹可循,所以整体看起来会比较有规律。

python可视化之颜色映射详解

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注三水点靠木的更多内容!

Python 相关文章推荐
python字典多条件排序方法实例
Jun 30 Python
举例介绍Python中的25个隐藏特性
Mar 30 Python
Python Socket编程详细介绍
Mar 23 Python
Python 删除连续出现的指定字符的实例
Jun 29 Python
Django处理多用户类型的方法介绍
May 18 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
May 27 Python
python实现的多任务版udp聊天器功能案例
Nov 13 Python
python脚本第一行如何写
Aug 30 Python
Python descriptor(描述符)的实现
Nov 15 Python
Python基础之tkinter图形化界面学习
Apr 29 Python
Django中的JWT身份验证的实现
May 07 Python
利用Python脚本写端口扫描器socket,python-nmap
Jul 23 Python
python的变量和简单数字类型详解
Sep 15 #Python
深入浅析Django MTV模式
python 进阶学习之python装饰器小结
Sep 04 #Python
自动在Windows中运行Python脚本并定时触发功能实现
Sep 04 #Python
关于python爬虫应用urllib库作用分析
解决pycharm下载库时出现Failed to install package的问题
关于python类SortedList详解
Sep 04 #Python
You might like
PHP正则获取页面所有图片地址
2016/03/23 PHP
客户端脚本中常常出现的一些问题和调试技巧
2007/01/09 Javascript
JS 判断代码全收集
2009/04/28 Javascript
JQuery 学习笔记 选择器之三
2009/07/23 Javascript
javaScript arguments 对象使用介绍
2013/10/18 Javascript
javascript实现网页字符定位的方法
2015/07/14 Javascript
javascript跨域方法、原理以及出现问题解决方法(详解)
2015/08/06 Javascript
浅析JS操作DOM的一些常用方法
2016/05/13 Javascript
jQuery扩展方法实现Form表单与Json互相转换的实例代码
2018/09/05 jQuery
Bootstrap-table使用footerFormatter做统计列功能
2018/09/07 Javascript
[01:00:25]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS Liquid
2018/03/31 DOTA
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
Python获取当前时间的方法
2014/01/14 Python
python实现数组插入新元素的方法
2015/05/22 Python
遗传算法之Python实现代码
2017/10/10 Python
Python实现备份MySQL数据库的方法示例
2018/01/11 Python
使用DataFrame删除行和列的实例讲解
2018/04/08 Python
python中的字符串内部换行方法
2018/07/19 Python
TensorFlow2.0矩阵与向量的加减乘实例
2020/02/07 Python
Python如何定义接口和抽象类
2020/07/28 Python
加拿大城市本地限时优惠:Buytopia.ca
2018/09/19 全球购物
C++面试题:关于链表和指针
2013/06/05 面试题
解决方案设计综合面试题
2015/08/31 面试题
艺术系应届生的自我评价
2013/10/19 职场文书
幼师专业求职推荐信
2013/11/08 职场文书
化学学院毕业生自荐信范文
2013/12/17 职场文书
职业生涯规划书的格式
2013/12/29 职场文书
幼儿园安全检查制度
2014/01/30 职场文书
乳制品整治工作方案
2014/05/29 职场文书
经济国贸专业求职信
2014/06/18 职场文书
销售经理助理岗位职责
2015/04/13 职场文书
2015年网管个人工作总结
2015/05/22 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书
2015初中团委工作总结
2015/07/28 职场文书
初中语文教学研修日志
2015/11/13 职场文书
Nginx反爬虫策略,防止UA抓取网站
2021/03/31 Servers