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调用命令行进度条的方法
May 05 Python
Python中的pack和unpack的使用
Mar 12 Python
python如何实现内容写在图片上
Mar 23 Python
分享一下Python数据分析常用的8款工具
Apr 29 Python
Python爬虫包BeautifulSoup异常处理(二)
Jun 17 Python
Python使用pickle模块报错EOFError Ran out of input的解决方法
Aug 16 Python
深入理解Python异常处理的哲学
Feb 01 Python
利用pyinstaller打包exe文件的基本教程
May 02 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
Nov 11 Python
python实现翻译word表格小程序
Feb 27 Python
解决keras使用cov1D函数的输入问题
Jun 29 Python
Python同时处理多个异常的方法
Jul 28 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抽象类 介绍
2012/06/13 PHP
利用PHP实现一个简单的用户登记表示例
2017/04/25 PHP
javascript 解析后的xml对象的读取方法细解
2009/07/25 Javascript
百度留言本js 大家可以参考下
2009/10/13 Javascript
extjs grid设置某列背景颜色和字体颜色的实现方法
2010/09/06 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
2015/11/30 Javascript
javascript合并表格单元格实例代码
2016/01/03 Javascript
AngularJS实现Model缓存的方式
2016/02/03 Javascript
AngularJS入门教程之更多模板详解
2016/08/19 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
2016/09/18 Javascript
Vue-cropper 图片裁剪的基本原理及思路讲解
2018/04/17 Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
2018/09/30 Javascript
JavaScript中七种流行的开源机器学习框架
2018/10/11 Javascript
vue双击事件2.0事件监听(点击-双击-鼠标事件)和事件修饰符操作
2020/07/27 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
[49:13]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第一局
2016/02/27 DOTA
Python使用回溯法子集树模板解决迷宫问题示例
2017/09/01 Python
Python入门必须知道的11个知识点
2018/03/21 Python
基于python实现百度翻译功能
2019/05/09 Python
基于Python的Post请求数据爬取的方法详解
2019/06/14 Python
python 模拟贷款卡号生成规则过程解析
2019/08/30 Python
python爬取Ajax动态加载网页过程解析
2019/09/05 Python
Python调用scp向服务器上传文件示例
2019/12/22 Python
关于tf.nn.dynamic_rnn返回值详解
2020/01/20 Python
django的autoreload机制实现
2020/06/03 Python
html5视频播放_动力节点Java学院整理
2017/07/13 HTML / CSS
波兰电子产品购物网站:Vobis
2019/05/26 全球购物
新加坡一家在线男士皮具品牌:Faire Leather Co.
2019/12/01 全球购物
面向游戏玩家和书呆子的极客订阅盒:Loot Crate
2020/11/25 全球购物
中学教师师德师风演讲稿
2014/08/22 职场文书
2014教师“四风问题”对照检查材料思想汇报
2014/09/16 职场文书
镇党政领导班子民主生活会思想汇报
2014/10/11 职场文书
前台接待岗位职责范本
2015/04/03 职场文书
审查起诉阶段律师意见书
2015/05/19 职场文书
Mysql 如何查询时间段交集
2021/06/08 MySQL
MongoDB数据库的安装步骤
2021/06/18 MongoDB