热图:

Display an image on the axes.

可以用来比较两个矩阵的相似程度

mp.imshow(z, cmap=颜色映射,origin=垂直轴向)

imshow(
    X,
    cmap=None,
    norm=None,
    aspect=None,
    interpolation=None,
    alpha=None,
    vmin=None,
    vmax=None,
    origin=None,
    extent=None,
    shape=None,
    filternorm=1,
    filterrad=4.0,
    imlim=None,
    resample=None,
    url=None,
    hold=None,
    data=None,
    **kwargs
)

X - array_like, shape (n, m) or (n, m, 3) or (n, m, 4);Display the image in `X` to current axes.

X 可以是数组array,或PIL image,若为数组,它following shapes and types

- M * N -- values to be mapped (float or int);该数组形式基于norm(将标量映射到标量 mapping scalar to scalar)和 cmap(将标准标量映射到颜色mapping the normed scalar to a color)

- M * N * 3 -- RGB (float or uint8)

- M * N * 4 -- RGBA (float or uint8)

RGB和RGBA阵列的元素表示M * N图像的像素。 对于浮点数,所有值应在[0 .. 1]的范围内,对于整数,所有值应在[0 ... 255]的范围内。 超出范围的值将被剪切到这些边界。

cmap - optional, default: None

aspect - ['auto' | 'equal' | scalar], optional, default: None

auto - 则更改图像宽高比以匹配轴的宽高比。
    equal - If 'equal', and `extent` is None, 则更改轴纵横比以匹配图像的纵横比。 If `extent` is not `None`, 则更改轴纵横比以匹配范围。

interpolation - string, optional, default: None ,

Acceptable values are 'none', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc',
'lanczos'

norm -  : `~matplotlib.colors.Normalize`, optional, default: None 略

vmin, vmax - scalar, optional, default: None

`vmin`和`vmax`与norm结合使用以标准化亮度数据。 注意,如果传递一个`norm`实例则`vmin`和`vmax`的设置将被忽略。

alpha - scalar, optional, default: None

介于0(透明)和1(不透明)之间。RGBA input data 时 alpha 参数自动忽略

origin : ['upper' | 'lower'], optional, default: None

将数组的[0,0]索引放在轴的左上角( upper) 或左下角( lower) 。 如果为None,则默认为rc`mage.origin`。

extent : scalars (left, right, bottom, top), optional, default: None

数据坐标中左下角和右上角的位置。 如果为“无”,则定位图像使得像素中心落在基于零的(行,列)索引上。

shape : scalars (columns, rows), optional, default: None

For raw buffer images

filternorm - scalar, optional, default: 1

filterrad - scalar, optional, default: 4.0

示例

import numpy as np
import matplotlib.pyplot as plt

n = 1000
# 用meshgrid生成一个二维数组
x, y = np.meshgrid(np.linspace(-3, 3, n), np.linspace(-3, 3, n))
z = (1 - x / 2 + x**5 + y**3) * np.exp(-x**2 - y**2)

# 画图
plt.figure('Hot', facecolor='lightgray')
plt.title('hotshot', fontsize=20)
plt.xlabel('x', fontsize=14)
plt.ylabel('y', fontsize=14)
plt.tick_params(labelsize=10)
plt.grid(linestyle=':')

plt.imshow(z, cmap='jet', origin='low')
plt.colorbar().set_label('z', fontsize=14)

plt.show()

官方网站 Image tutorial 、

Matplotlib调用imshow()函数绘制热图

matplotlib热图

基于matplotlib的数据可视化 - 热图imshow的更多相关文章

  1. 基于matplotlib的数据可视化 - 笔记

    1 基本绘图 在plot()函数中只有x,y两个量时. import numpy as np import matplotlib.pyplot as plt # 生成曲线上各个点的x,y坐标,然后用一 ...

  2. 基于matplotlib的数据可视化 - 饼状图pie

    绘制饼状图的基本语法 创建数组 x 的饼图,每个楔形的面积由 x / sum(x) 决定: 若 sum(x) < 1,则 x 数组不会被标准化,x 值即为楔形区域面积占比.注意,该种情况会出现 ...

  3. 基于matplotlib的数据可视化 - 三维曲面图gca

    1 语法 ax = plt.gca(projection='3d')ax.plot_surface(x,y,z,rstride=行步距,cstride=列步距,cmap=颜色映射) gca(**kwa ...

  4. 基于matplotlib的数据可视化 -

    matplotlib.pyplot(as mp or as plt)提供基于python语言的绘图函数 引用方式: import matplotlib.pyplot as mp / as plt 本章 ...

  5. 基于matplotlib的数据可视化 - 等高线 contour 与 contourf

    contour 与contourf 是绘制等高线的利器. contour  - 绘制等高线 contourf - 填充等高线 两个的返回值值是一样的(return values are the sam ...

  6. 基于matplotlib的数据可视化(图形填充fill fill_between) - 笔记(二)

    区域填充函数有 fill(*args, **kwargs) 和fill_between() 1  绘制填充多边形fill() 1.1 语法结构 fill(*args, **kwargs) args - ...

  7. 基于matplotlib的数据可视化 - 柱状图bar

    柱状图bar 柱状图常用表现形式为: plt.bar(水平坐标数组,高度数组,宽度比例,ec=勾边色,c=填充色,label=图例标签) 注:当高度值为负数时,柱形向下 1 语法 bar(*args, ...

  8. matplotlib实现数据可视化

    一篇matplotlib库的学习博文.matplotlib对于数据可视化非常重要,它完全封装了MatLab的所有API,在python的环境下和Python的语法一起使用更是相得益彰. 一.库的安装和 ...

  9. 基于HTML5实现的Heatmap热图3D应用

    Heatmap热图通过众多数据点信息,汇聚成直观可视化颜色效果,热图已广泛被应用于气象预报.医疗成像.机房温度监控等行业,甚至应用于竞技体育领域的数据分析. 已有众多文章分享了生成Heatmap热图原 ...

随机推荐

  1. ASP入门(二)-创建Access数据库

    通常来说,ASP程序是搭配Access数据库来使用的,因此在安装完ASP环境后,为了方便建立和管理数据库,我们还需要安装Access数据库. Access是Microsoft Office家族中的一员 ...

  2. 微信、支付宝App支付-JPay0.0.2发布

    JPay 对微信App支付.支付宝App支付的二次封装,对外提供一个相对简单的接口以及支付结果的回调 GitHub:https://github.com/Javen205/JPay OsChina:h ...

  3. Android 八款开源 Android 游戏引擎

    原文地址 本文内容 Angle Rokon LGame AndEngine libgdx jPCT Alien3d Catcake 最近无意间看到一篇关于 Android 搜索引擎的文章,于是搜索了, ...

  4. Office办公 如何设置WPS的默认背景大小

    设计-页面设置,然后修改宽度和高度   因为我们只是需要背景跟平面差不多大(不同屏幕比如宽屏的就比较长),修改宽度和高度的时候注意文字之类的也会被拉伸缩放,所以自己改了之后看效果,比如我100,50的 ...

  5. android中使用setOnKeyListener响应输入事件

    在界面中添加一个EditText输入框控件,需要在输入时响应输入事件,可以使用setOnKeyListener() 事件: final EditText editText = findViewById ...

  6. 微信小程序 - 非入侵式布局

    非入侵式布局,就是不影响原有内容以及代码,增加用户体验感(UE)的一种方式. 例如我们每个接口必须返回: 0:请求成功 -1:请求失败 .... 这样就便于前端判断数据是否加载成功,然后以客观的方式提 ...

  7. Struck 跟踪算法(二)

    以下開始读详细源代码 config.h文件 /* * Struck: Structured Output Tracking with Kernels * * Code to accompany the ...

  8. Webwork【02】前端OGNL试练

    1.OGNL 出现的意义 在mvc中,数据是在各个层次之间进行流转是一个不争的事实.而这种流转,也就会面临一些困境,这些困境,是由于数据在不同世界中的表现形式不同而造成的: a. 数据在页面上是一个扁 ...

  9. Hibernate学习笔记五:反向工程快速开发

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6768513.html  一:反向工程 Myeclipse提供由 数据库表 生成 java pojo 和 hib ...

  10. JavaWeb应用出现HTTP 500-Unable to compile class for JSP 错误 的解决

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6383192.html 在上一篇博文中,我们把自己本机的web项目部署到了云主机的tomcat上.之后通过浏览器 ...