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 22 Python
python常规方法实现数组的全排列
Mar 17 Python
在Python的Bottle框架中使用微信API的示例
Apr 23 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
Python实现调用另一个路径下py文件中的函数方法总结
Jun 07 Python
python3.X 抓取火车票信息【修正版】
Jun 19 Python
Python之用户输入的实例
Jun 22 Python
pytorch 共享参数的示例
Aug 17 Python
如何利用Python开发一个简单的猜数字游戏
Sep 22 Python
Python字符串格式化f-string多种功能实现
May 07 Python
使用python求斐波那契数列中第n个数的值示例代码
Jul 26 Python
Python filter过滤器原理及实例应用
Aug 18 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
基于mysql的bbs设计(二)
2006/10/09 PHP
关于使用key/value数据库redis和TTSERVER的心得体会
2013/06/28 PHP
浅析php变量修饰符static的使用
2013/06/28 PHP
php获取本机真实IP地址实例代码
2016/03/31 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
php xhprof使用实例详解
2019/04/15 PHP
event.srcElement+表格应用
2006/08/29 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
后台获取ZTREE选中节点的方法
2015/02/12 Javascript
Javascript的表单验证-揭开正则表达式的面纱
2016/03/18 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
2016/09/19 Javascript
jQuery UI制作选项卡(tabs)
2016/12/13 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
2016/12/29 Javascript
使用js获取伪元素的content实例
2017/10/24 Javascript
基于vue2实现上拉加载功能
2017/11/28 Javascript
JavaScript设计模式之缓存代理模式原理与简单用法示例
2018/08/07 Javascript
js基础之事件捕获与冒泡原理
2019/10/09 Javascript
Vue学习之组件用法实例详解
2020/01/06 Javascript
jquery+css3实现的经典弹出层效果示例
2020/05/16 jQuery
python subprocess 杀掉全部派生的子进程方法
2017/01/16 Python
python跳过第一行快速读取文件内容的实例
2018/07/12 Python
利用Python如何批量更新服务器文件
2018/07/29 Python
Python中Subprocess的不同函数解析
2019/12/10 Python
python中pyplot基础图标函数整理
2020/11/10 Python
Python关于拓扑排序知识点讲解
2021/01/04 Python
Python如何使用神经网络进行简单文本分类
2021/02/25 Python
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
世界领先的在线地板和建筑材料批发商:BuildDirect
2017/02/26 全球购物
Wiggle美国:英国骑行、跑步、游泳、铁人三项商店
2018/10/27 全球购物
印度在线购买电子产品网站:Croma
2020/01/02 全球购物
什么是索引指示器
2012/08/20 面试题
幼儿园家长安全责任书
2014/07/22 职场文书
中学推普周活动总结
2015/05/07 职场文书
2015大学党建带团建工作总结
2015/07/23 职场文书
先进个人主要事迹怎么写
2015/11/04 职场文书
pytest进阶教程之fixture函数详解
2021/03/29 Python