matplotlib包的学习(一)
一.matplotlib是什么
matplotlib是一個在Python中將數據可視化的第三方包,和matlab中的plot指令,和gnuplot類似,都是將數據進行可視化的工具。matplotlib是一個數學繪圖庫,可以用它來制作折線圖和散點圖等的圖表。
二.基礎指令
折線圖
1. 繪制折線圖
首先導入matplotlib中的pyplot,pyplot中包含了很多畫圖的函數,和matlab中畫圖類似,需要以下幾個要素:
因此根據這三個要素我們來繪制一幅折線圖
2. 修改標簽文字和線條粗細
#導入matplotlib包 import matplotlib.pyplot as plt from matplotlib.pylab import mpl mpl.rcParams['font.sans-serif'] = ['SimHei'] # 顯示中文 #設置數據點 squares = [1, 4, 9, 16, 25] #設置圖表標題 plt.title("計算平方和",fontsize = 24) #給坐標軸添加標簽 plt.xlabel("數值", fontsize = 14) plt.ylabel("平方和", fontsize = 14) #設置線條粗細 plt.plot(squares, linewidth = 5) plt.show()- title()給圖表指定標題
- linewidth()設置plot()繪制的線條粗細
- xlabel()和ylabel()讓你能夠為每條軸設置標題
3. 矯正圖形
我們發現4的平方并非是25,所出現的原因如下:我們為plot()提供一系列數字時,它的默認第一個數據點對應的x坐標值為0,但是我們第一個數據點對應的坐標值是1。為了改變這個情況,我們新建一個列表存放x軸的數據。
#導入matplotlib包 import matplotlib.pyplot as plt from matplotlib.pylab import mpl mpl.rcParams['font.sans-serif'] = ['SimHei'] # 顯示中文 #設置數據點 input_value = [1, 2, 3, 4, 5] squares = [1, 4, 9, 16, 25] #設置圖表標題 plt.title("計算平方和",fontsize = 24) #給坐標軸添加標簽 plt.xlabel("數值", fontsize = 14) plt.ylabel("平方和", fontsize = 14) #設置線條粗細 plt.plot(input_value, squares, linewidth = 5) plt.show()改變plot()中的參數,添加x軸數據,結果如下:
此時52=25是正確的。
散點圖
1.繪制散點圖
繪制散點圖的函數是scatter(),對他傳遞一對x和y坐標,就可以在指定位置繪制一個點。
plt.scatter(3, 9) plt.show()2.繪制一系列點
思路其實與折線圖一樣,用兩個列表分別存儲x和y坐標,再用scatter()把它們繪制出來就可以了
x_value = [1, 2, 3, 4, 5] y_value = [3, 4, 7, 9, 11] #s=100表示點的大小 plt.scatter(x_value, y_value, s=100) plt.show()結果如下圖所示:
3.設置坐標區間
有時候需要顯示的數據點很多,但我們只需要看一個范圍內的數據,我們就可以設置圖表的坐標軸取值范圍。
#x坐標值從1到1000 x_value = list(range(1,1001)) y_value = [x**2 for x in x_value] #s表示點的大小 plt.scatter(x_value, y_value, s=40) #設置每個坐標軸的取值范圍 plt.axis([0, 1100, 0, 1100000]) plt.show()- axis([橫坐標起點,橫坐標終點,縱坐標起點,縱坐標終點])
結果如下:
4.修改數據點顏色
要修改數據點顏色時,在scatter()中傳遞實參c,c是一個列表,其中包含三個0-1之間的小數值,分別表示紅色、綠色和藍色分量(類似于RGB)
- 藍色: ‘b’ (blue)
- 綠色: ‘g’ (green)
- 紅色: ‘r’ (red)
- 藍綠色(墨綠色): ‘c’ (cyan)
- 紅紫色(洋紅): ‘m’ (magenta)
- 黃色: ‘y’ (yellow)
- 黑色: ‘k’ (black)
- 白色: ‘w’ (white)
- 灰度表示: e.g. 0.75 ([0,1]內任意浮點數)
- RGB表示法: e.g. ‘#2F4F4F’ 或 (0.18, 0.31, 0.31)
5.漸變色
在數據可視化中,我們可以用較淺的顏色來表示小數值,用較深的顏色來顯示較大的值。
plt.scatter(x_value, y_value, s=40, edgecolors='none',c = y_value , cmap = plt.cm.Blues)- 將參數c設置成了一個y值列表,并使用參數cmap告訴pyplot使用哪個顏色映射。這些代碼將y值較小的點顯示為淺藍色,并將y值較大的點顯示為深藍色,結果如下
6.保存圖表
savefig()可以自動將圖表保存到文件中,該函數的第一個實參指定要以什么樣的文件名保存圖表,一般來說這個文件將存儲在該代碼所在的目錄中;第二個實參將圖表多余的空白區域裁剪掉。
7.清空圖表
-
plt.cla()
-
plt.close(0)# 關閉圖 0
-
plt.close(‘all’) 關閉所有圖
總結
以上是生活随笔為你收集整理的matplotlib包的学习(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 双表联查mysql_MySQL的双表多表
- 下一篇: matplotlib包的学习(二)