Matplotlib 是 Python 的繪圖庫(kù),常用來在無前端頁(yè)面時(shí)進(jìn)行一些本地?cái)?shù)據(jù)趨勢(shì)和結(jié)果的繪制展示,做相關(guān)使用的重點(diǎn)記錄。
pyplot 主題的設(shè)置
使用pyplot畫圖時(shí),常覺得畫圖效果不是很好。其實(shí)pyplot自帶有26種主題可供選擇,只是常規(guī)顯示的默認(rèn)主題。
如何查看支持的主題
styles = plt.style.available
print(styles)
支持的主題列表如下:
['seaborn-dark', 'seaborn-darkgrid', 'seaborn-ticks', 'fivethirtyeight', 'seaborn-whitegrid', 'classic', '_classic_test', 'fast', 'seaborn-talk', 'seaborn-dark-palette', 'seaborn-bright', 'seaborn-pastel', 'grayscale', 'seaborn-notebook', 'ggplot', 'seaborn-colorblind', 'seaborn-muted', 'seaborn', 'Solarize_Light2', 'seaborn-paper', 'bmh', 'tableau-colorblind10', 'seaborn-white', 'dark_background', 'seaborn-poster', 'seaborn-deep']
設(shè)置主題
plt.style.use("seaborn") # 設(shè)置使用的樣式,eg:設(shè)置主題樣式為的seaborn
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用來正常顯示中文標(biāo)簽
linux 機(jī)器中文不支持的問題
可參閱文檔:http://www.itdecent.cn/p/7b7a3e73ef21
pylot 繪圖
繪制一個(gè)圖
import matplotlib.pyplot as plt
plt.figure(figsize=(6, 4)) # 設(shè)置圖形的大小,寬和高,單位是英尺
line_color = "#4DC2FF" # 定義線條顏色,可以選擇自己喜歡的顏色
plt.style.use("seaborn") # 設(shè)置使用的樣式,眾多主題選擇喜歡的,不設(shè)置則使用默認(rèn)的
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用來正常顯示中文標(biāo)簽
x_data = range(20) # x 軸的數(shù)據(jù)
y_data = [2, 4, 3, 5, 6, 5, 4, 7, 8, 7, 6, 8, 6, 5, 6, 5, 4, 7, 8, 3] # y軸的值
plt.plot(x_data, y_data, color=line_color) # 設(shè)置數(shù)據(jù)和線條顏色等
plt.title("這是標(biāo)題", fontsize=14, fontweight='bold') # 設(shè)置標(biāo)題
plt.ylabel('這是y軸') # 設(shè)置y坐標(biāo)軸名稱
plt.xlabel("這是x軸") # 設(shè)置x坐標(biāo)軸名稱
'''
plt.xlabel、plt.ylabel 設(shè)置坐標(biāo)軸名稱
plt.xticks、plt.yticks設(shè)置坐標(biāo)軸刻度
'''
image_name = "demo.jpg"
plt.savefig(image_name) # 保存為本地圖片
plt.show() # 繪制圖片
效果展示:

Figure_1.png
繪制多個(gè)子圖
subplot(nrows, ncols, index, **kwargs) 支持繪制子圖在當(dāng)前圖面里
nrows是要繪制的總行數(shù),ncols是總列數(shù),index是當(dāng)前子圖的index。
譬如要繪制4張圖,2行2列的話,index則從左到右,從上到下,按照如下規(guī)則排列,分別為1,2,3,4。
| 1 | 2 |
|---|---|
| 3 | 4 |
如下示例,繪制了6張圖,2行3列。
import matplotlib.pyplot as plt
plt.figure(figsize=(10, 8)) # 設(shè)置圖形的大小,寬和高,單位是英尺
line_color = "#4DC2FF" # 定義線條顏色,可以選擇自己喜歡的顏色
plt.style.use("seaborn") # 設(shè)置使用的樣式,眾多主題選擇喜歡的,不設(shè)置則使用默認(rèn)的
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用來正常顯示中文標(biāo)簽
image_name = "demo.jpg"
x_data = range(10) # x 軸的數(shù)據(jù)
y_data = [2, 4, 5, 6, 5, 4, 3, 4, 3, 4] # y軸的值
for index in range(6):
plt.subplot(2, 3, index + 1)
plt.plot(x_data, y_data, color=line_color) # 設(shè)置數(shù)據(jù)和線條顏色等
plt.title("這是第{index}個(gè)子圖".format(index=index+1))
plt.savefig(image_name) # 保存為本地圖片
plt.show() # 繪制圖片

demo.jpg