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()
截圖如下所示:
熱圖(heatmap)是數據分析的常用方法,通過色差、亮度來展示數據的差異、易於理解。Python在Matplotlib庫中,調用imshow()函數實現熱圖繪製。
'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ羣:579817333
尋找有志同道合的小夥伴,互幫互助,羣裏還有不錯的視頻學習教程和PDF電子書!
'''
#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()
輸出結果:
錯誤備忘:
問題一: NameError: name 'imshow' is not defined
解決方案:在文件中添加,
from pylab import *
問題二:ImportError: No module named _internal
解決方案:原因是安裝好pip 後續又安裝了pip,導致版本衝突。
解決方法:
後續又安裝了pip,導致版本衝突。
解決方法:
sudo apt remove python-pip