可视化图形(二):热力图-imshow()

  • 官方文档:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.imshow.html?highlight=imshow#matplotlib.pyplot.imshow

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 矩阵或图像
cmap 设置热图的Colormap
interpolation 'nearest’是把相邻的相同的颜色连成片
alpha 默认为None,0(透明)~1(不透明)之间的值

camp参数:

cmap = plt.cm.gray 返回线性灰度色图
cmap = plt.cm.hot 从黑平滑过度到红、橙色和黄色的背景色,然后到白色
cmap = plt.cm.cool 包含青绿色和品红色的阴影色,从青绿色平滑变化到品红色
cmap = plt.cm.bone 具有较高的蓝色成分的灰度色图,用于对灰度图添加电子的视图
cmap = plt.cm.white 全白的单色色图
cmap = plt.cm.spring 包含品红和黄的阴影颜色
cmap = plt.cm.summer 包含绿和黄的阴影颜色
cmap = plt.cm.autumn 从红色平滑变化到橙色,然后到黄色
cmap = plt.cm.winter 包含蓝和绿的阴影色
示例一:
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

points = np.arange(-5, 5, 0.01) #1000个间隔相等的点
xs, ys = np.meshgrid(points, points) #生成网格点坐标矩阵
z = np.sqrt(xs**2 + ys**2) #xs*xs + ys*ys = z*z

fig = plt.figure() #创建一个新Figure
fig.suptitle("Image plot of r'$\sqrt{x^2+y^2}$' for a grid of values") #设置总标题

#第1个子图
ax1 = fig.add_subplot(221) 
plt.imshow(z)
#第2个子图
ax2 = fig.add_subplot(222) 
plt.imshow(z, cmap = plt.cm.gray) 
#第3个子图
ax3 = fig.add_subplot(223) 
plt.imshow(z, cmap = plt.cm.cool)
#第4个子图
ax4 = fig.add_subplot(224)
plt.imshow(z, cmap = plt.cm.hot)

plt.show()

可视化图形(二):热力图-imshow()_第1张图片

示例二:
import matplotlib.pyplot as plt
X = [[1,2], [3,4], [5,6]]
plt.imshow(X, cmap = 'Blues')
plt.colorbar(shrink=0.5)  #设置Bar为一半高度
plt.show()

可视化图形(二):热力图-imshow()_第2张图片

你可能感兴趣的:(可视化图形,matplotlib)