Python matplotlib的使用并自定义colormap的方法


Posted in Python onDecember 13, 2018

0.前言

添加colormap的对象是灰度图,可以变成热量图,从而更加明显的发现一些规律,适用于一些雷达图像等

from PIL import Image
# 将彩色图片转换成黑白图片
im=Image.open("./pic.jpg").convert('L')
# 保存图片
im.save("image.jpg")

1.从灰色图片中读取数据,转换成colormap图

import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import matplotlib as mpl
from PIL import Image
import numpy as np

# 自定义colormap
def colormap():
  return mpl.colors.LinearSegmentedColormap.from_list('cmap', ['#FFFFFF', '#98F5FF', '#00FF00', '#FFFF00','#FF0000', '#8B0000'], 256)

# 读取灰度图
data=mpimg.imread('./gray.jpg')
# 如果需要固定colorbar的范围,可以设置参数vmin,vmax,具体参考
                 #http://matplotlib.org/api/image_api.html

# 设定每个图的colormap和colorbar所表示范围是一样的,即归一化 
plt.imsave('colormap.jpg',data, cmap=colormap())

这里没有显示出来colorbar的数值分布,得到的图像是等大的

2.从txt文本中读取二维数据,转换成自定义colormap图

#python 3
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import matplotlib.colors as colors


# load data
def loaddata(i): # 文件编号
  path = './input/data/trainPingliu/trainPingliu%d.txt' % i
  data = np.loadtxt(path)
  return data


# 生成图片格式自定义
def colormap():
  # 白青绿黄红
  cdict = ['#FFFFFF', '#9ff113', '#5fbb44', '#f5f329', '#e50b32']
  # 按照上面定义的colordict,将数据分成对应的部分,indexed:代表顺序
  return colors.ListedColormap(cdict, 'indexed')


# for i in range(1, 10000):
# 加载数据
data = loaddata(1)
fig = plt.figure()
# 加载图片设置
my_cmap = colormap()

# 第一个子图,按照默认配置
ax = fig.add_subplot(221)
ax.imshow(data)

# 第二个子图,使用api自带的colormap
ax = fig.add_subplot(222)
cmap = mpl.cm.bwr # 蓝,白,红
ax.imshow(data, cmap=cmap)

# 第三个子图增加一个colorbar
ax = fig.add_subplot(223)
cmap = mpl.cm.winter # 冬季风格
im = ax.imshow(data, cmap=my_cmap)
plt.colorbar(im) # 增加colorbar

# 第四个子图可以调整colorbar
ax = fig.add_subplot(224)
cmap = mpl.cm.rainbow
# 这里设置colormap的固定值
norm = mpl.colors.Normalize(vmin=-1, vmax=1)
im=ax.imshow(data,cmap=cmap)
plt.colorbar(im,cmap=cmap, norm=norm,ticks=[-1,0,1])


# 显示
plt.show()

以上这篇Python matplotlib的使用并自定义colormap的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简述Python中的进程、线程、协程
Mar 18 Python
python实现决策树分类算法
Dec 21 Python
详解python字节码
Feb 07 Python
pycharm远程linux开发和调试代码的方法
Jul 17 Python
对python中数组的del,remove,pop区别详解
Nov 07 Python
Django使用AJAX调用自己写的API接口的方法
Mar 06 Python
python向字符串中添加元素的实例方法
Jun 28 Python
pytorch 固定部分参数训练的方法
Aug 17 Python
python3.7 openpyxl 删除指定一列或者一行的代码
Oct 08 Python
python中count函数简单用法
Jan 05 Python
将keras的h5模型转换为tensorflow的pb模型操作
May 25 Python
python+opencv实现视频抽帧示例代码
Jun 11 Python
python实现给scatter设置颜色渐变条colorbar的方法
Dec 13 #Python
matplotlib实现热成像图colorbar和极坐标图的方法
Dec 13 #Python
对matplotlib改变colorbar位置和方向的方法详解
Dec 13 #Python
python用plt画图时,cmp设置方法
Dec 13 #Python
python reverse反转部分数组的实例
Dec 13 #Python
对Python的zip函数妙用,旋转矩阵详解
Dec 13 #Python
python将list转为matrix的方法
Dec 12 #Python
You might like
实用函数2
2007/11/08 PHP
php中使用$_REQUEST需要注意的一个问题
2013/05/02 PHP
php5.3 注意事项说明
2013/07/01 PHP
laravel 解决强制跳转 https的问题
2019/10/22 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
Mootools 1.2教程(21)——类(二)
2009/09/15 Javascript
Javascript面向对象编程
2012/03/18 Javascript
jQuery判断iframe中元素是否存在的方法
2013/05/11 Javascript
JavaScript 垃圾回收机制分析
2013/10/10 Javascript
把Node.js程序加入服务实现随机启动
2015/06/25 Javascript
浅析四种常见的Javascript声明循环变量的书写方式
2015/10/14 Javascript
浏览器复制插件zeroclipboard使用指南
2016/03/26 Javascript
JavaScript程序中实现继承特性的方式总结
2016/06/24 Javascript
AngularJS基础 ng-readonly 指令简单示例
2016/08/02 Javascript
创建一般js对象的几种方式
2017/01/19 Javascript
详解基于angular路由的requireJs按需加载js
2017/01/20 Javascript
Vue.js 中 axios 跨域访问错误问题及解决方法
2018/11/21 Javascript
浅谈VUE防抖与节流的最佳解决方案(函数式组件)
2019/05/22 Javascript
详解vue父子组件状态同步的最佳方式
2020/09/10 Javascript
[03:42]2016国际邀请赛中国区预选赛首日现场玩家采访
2016/06/26 DOTA
Python使用QRCode模块生成二维码实例详解
2017/06/14 Python
Python双精度浮点数运算并分行显示操作示例
2017/07/21 Python
详解Python核心编程中的浅拷贝与深拷贝
2018/01/07 Python
python通过elixir包操作mysql数据库实例代码
2018/01/31 Python
解决pycharm无法识别本地site-packages的问题
2018/10/13 Python
python 对给定可迭代集合统计出现频率,并排序的方法
2018/10/18 Python
11个Python3字典内置方法大全与示例汇总
2019/05/13 Python
python 实现矩阵按对角线打印
2019/11/29 Python
matplotlib.pyplot.matshow 矩阵可视化实例
2020/06/16 Python
阿根廷在线宠物商店:Puppis
2018/03/23 全球购物
美国牛仔品牌:True Religion
2018/11/16 全球购物
FC-Moto英国:欧洲最大的摩托车服装和头盔商店之一
2019/08/25 全球购物
四风对照检查材料思想汇报
2014/09/20 职场文书
违反交通安全法检讨书
2014/10/24 职场文书
儿园租房协议书范本
2014/12/02 职场文书
合伙经营协议书范本(通用版)
2014/12/03 职场文书