欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

用matplotlib中imshow()函数绘图

程序员文章站 2022-05-18 18:17:22
matplotlib 是python最著名的2D绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。通过简单的绘图语句,就可以绘制出高质量的图了。 这里我们就主要讲一下inshow()函数的使用。 首先看一下怎么基本 ......

matplotlib 是python最著名的2d绘图库,它提供了一整套和matlab相似的命令api,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入gui应用程序中。通过简单的绘图语句,就可以绘制出高质量的图了。

这里我们就主要讲一下inshow()函数的使用。

首先看一下怎么基本画图的流程:

import matplotlib.pyplot as plt 

#创建新的figure
fig = plt.figure()

#必须通过add_subplot()创建一个或多个绘图
ax = fig.add_subplot(221)

#绘制2x2两行两列共四个图,编号从1开始
ax1 = fig.add_subplot(221)
ax2 = fig.add_subplot(222)
ax3 = fig.add_subplot(223)
ax4 = fig.add_subplot(224)

#图片的显示
plt.show()

截图如下所示:
用matplotlib中imshow()函数绘图
热图(heatmap)是数据分析的常用方法,通过色差、亮度来展示数据的差异、易于理解。python在matplotlib库中,调用imshow()函数实现热图绘制。

#coding=utf-8
import matplotlib.pyplot as plt 
import numpy as np

points = np.arange(-5,5,0.01)

xs,ys = np.meshgrid(points,points)

z = np.sqrt(xs**2 + ys**2)

#创建新的figure
fig = plt.figure()

#绘制2x2两行两列共四个图,编号从1开始
ax = fig.add_subplot(221)
ax.imshow(z)

ax = fig.add_subplot(222)
#使用自定义的colormap(灰度图)
ax.imshow(z,cmap=plt.cm.gray)

ax = fig.add_subplot(223)
#使用自定义的colormap
ax.imshow(z,cmap=plt.cm.cool)

ax = fig.add_subplot(224)
#使用自定义的colormap
ax.imshow(z,cmap=plt.cm.hot)

#图片的显示
plt.show()

输出结果:
用matplotlib中imshow()函数绘图
错误备忘:

问题一: nameerror: name 'imshow' is not defined

解决方案:在文件中添加,

from pylab import *

问题二:importerror: no module named _internal

解决方案:原因是安装好pip 后续又安装了pip,导致版本冲突。

解决方法:
后续又安装了pip,导致版本冲突。

解决方法:

sudo apt remove python-pip