matplotlib基礎---pyplot的使用(1)

一. 基本概念(組成)

  1. matplotlib組成: 由棧組成, 分爲三層: Scripting(腳本), Artist(美工),Backend(後臺).
  2. 在整個matplotlib中, 圖形中所能看到的元素都屬於Artist對象, 即標題, 軸標籤, 刻度等組成的所有元素都是Artist對象的實例.
    (1) 如果把Artist比做畫畫的話, Figure相當於畫板, Axes(座標系)相當於畫畫的白紙, Axis(座標系)相當於白紙上畫的座標系
    所以, 可以說一個畫布(figure)可以有多個Axes(座標系), 一個座標系可以有多個Axis(座標軸), 包含兩個即爲2D座標系, 包含三個即爲3D座標系.
    (2) Subplot實際上是axes的特例(子集) , 就是一個畫布上多畫幾個Axes(座標系),再縮小到特定位置,就是Subplot了. 相當於MATLAB中的一個圖中有好幾個座標系
    在這裏插入圖片描述

二. 入門應用

1. 繪製直線

import matplotlib.pyplot as plt
# 當plot中參數只有一個列表時, 列表中數字代表縱座標, 橫座標從0開始
plt.plot([4, 6, 3, 6, 8, 7])
plt.show()

在這裏插入圖片描述

import matplotlib.pyplot as plt
# 當plot中參數有兩組列表時, 第一組代表橫座標, 第二組代表縱座標
plt.plot([0, 1, 2, 3, 4, 5, ], [1, 2, 3, 4, 5, 6])
plt.show()

在這裏插入圖片描述

2. 簡單應用: 繪製溫度變化折線圖

import matplotlib.pyplot as plt
import random

# 生成fig畫布在上面畫圖. figsize爲設置圖片尺寸, dpi爲設置圖片透明度, 數字越大透明度越高
plt.figure(figsize=(20, 8), dpi=80)

# 編碼中文顯示問題, 輸入這兩行代碼可以讓圖中的中文正常顯示
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False

# 準備x, y座標的數據
x = range(60)  # 橫座標
# 上海天氣縱座標
y_shanghai = [random.uniform(15, 18) for i in x]
# 北京天氣縱座標
y_beijing = [random.uniform(3, 5) for i in x]
# 橫座標時間數據
x_ch = ["11點{}分".format(i) for i in x]
# 縱座標數據
y_ticks = range(40)

# 上海折線圖繪製
plt.plot(x, y_shanghai, label='上海')
# 北京折線圖繪製(x爲x軸, y_beijing爲y軸, color爲線條顏色, linestyle爲線條樣式, label爲綁定標籤'北京')
plt.plot(x, y_beijing, color='r', linestyle='--', label='北京')

# 顯示刻度, 間隔(步長)
plt.xticks(x[::5], x_ch[::5])  # 橫座標步長間隔5
plt.yticks(y_ticks[::5])  # 橫座標步長間隔5

# 曲線圖的各種屬性
plt.xlabel("時間")  # 橫座標屬性
plt.ylabel("溫度")  # 縱座標屬性
plt.title("一些城市的溫度變化曲線圖")  # 座標軸標題

# 圖中加入註釋(圖片右上角標誌)
plt.legend(loc="best")

# 保存圖片(我的圖片位置爲: C:\Users\admin)
plt.savefig("matplotlib.png")

# 顯示
plt.show()

運行結果如下圖 :
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章