首頁 > 軟體

Python中plt.plot()、plt.scatter()和plt.legend函數的用法範例

2022-03-29 13:01:37

plt.plot()函數

plt.plot(x, y, format_string, **kwargs)
引數說明
xX軸資料,列表或陣列,可選
yY軸資料,列表或陣列
format_string控制曲線的格式字串,可選
**kwargs第二組或更多(x,y,format_string),可畫多條曲線

format_string 由顏色字元、風格字元、標記字元組成

  • 顏色字元
    • 'b' 藍色 'm' 洋紅色 magenta
    • 'g' 綠色 'y' 黃色
    • 'r' 紅色 'k' 黑色
    • 'w' 白色 'c' 青綠色 cyan
    • '#008000' RGB某顏色 '0.8' 灰度值字串
    • 多條曲線不指定顏色時,會自動選擇不同顏色
  • 風格字元
    • '‐' 實線
    • '‐‐' 破折線
    • '‐.' 點劃線
    • ':' 虛線
    • '' ' ' 無線條
  • 標記字元
    • '.' 點標記
    • ',' 畫素標記(極小點)
    • 'o' 實心圈標記
    • 'v' 倒三角標記
    • '^' 上三角標記
    • '>' 右三角標記
    • '<' 左三角標記…等等

**kwargs : 第二組或更多(x,y,format_string)

color : 控制顏色, color=‘green’

linestyle : 線條風格, linestyle=‘dashed’

marker : 標記風格, marker=‘o’

markerfacecolor: 標記顏色, markerfacecolor=‘blue’

markersize: 標記尺寸, markersize=20

b = np.arange(5)
plt.plot(b,b*1.0,'g.-',b,b*1.5,'rx',b,b*2.0, 'b')
plt.show()

plt.scatter()函數

plt.scatter()函數用於生成一個scatter散點圖。

matplotlib.pyplot.scatter(x, y, s=20, c='b', marker='o', cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, hold=None, **kwargs
引數解釋說明
x,y表示的是shape大小為(n,)的陣列,也就是我們即將繪製散點圖的資料點,輸入資料。
s表示的是大小,是一個標量或者是一個shape大小為(n,)的陣列,可選,預設20。
c表示的是色彩或顏色序列,可選,預設藍色’b’。但是c不應該是一個單一的RGB數位,也不應該是一個RGBA的序列,因為不便區分。c可以是一個RGB或RGBA二維行陣列。
markerMarkerStyle,表示的是標記的樣式,可選,預設’o’。
cmapColormap,標量或者是一個colormap的名字,cmap僅僅當c是一個浮點數陣列的時候才使用。如果沒有申明就是image.cmap,可選,預設None。
normNormalize,資料亮度在0-1之間,也是隻有c是一個浮點數的陣列的時候才使用。如果沒有申明,就是預設None。
vmin,vmax標量,當norm存在的時候忽略。用來進行亮度資料的歸一化,可選,預設None。
alpha標量,0-1之間,可選,預設None。
linewidths標記點的長度,預設None。

例子

import numpy as np
import matplotlib.pyplot as plt
 
np.random.seed(0)
x=np.random.rand(20)
y=np.random.rand(20)

area=(50*np.random.rand(20))**2
 
plt.scatter(x,y,s=area,alpha=0.5)
plt.show()

plt.legend()函數

1.設定圖例的位置

plt.legend(loc=' ')

2.設定圖例字型大小

fontsize : int or float or {‘xx-small', ‘x-small', ‘small', ‘medium', ‘large', ‘x-large', ‘xx-large'}

3.設定圖例邊框及背景

plt.legend(loc='best',frameon=False) #去掉圖例邊框
plt.legend(loc='best',edgecolor='blue') #設定圖例邊框顏色
plt.legend(loc='best',facecolor='blue') #設定圖例背景顏色,若無邊框,引數無效

4.設定圖例標題

legend = plt.legend(["BJ", "SH"], title='Beijing VS Shanghai')
#或者 
plt.plot(["BJ", "SH"],loc='upper left',title='Beijing VS Shanghai')

5.設定圖例名字及對應關係

legend = plt.legend([p1, p2], ["BJ", "SH"])

範例

import matplotlib.pyplot as plt
import numpy as np   
x = np.arange(0,10,1)
plt.plot(x,x,'r--',x,np.cos(x),'g--',marker='*')
plt.xlabel('row')
plt.ylabel('cow')
plt.legend(["BJ","SH"],loc='upper left',loc='upper left')
plt.show()

執行結果

總結

到此這篇關於Python中plt.plot()、plt.scatter()和plt.legend函數用法的文章就介紹到這了,更多相關plt.plot()、plt.scatter()和plt.legend函數內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com