Axes對(duì)象是具有數(shù)據(jù)空間的圖像區(qū)域。給定的圖形可以包含許多軸,但給定的Axes對(duì)象只能在一個(gè)圖中。軸包含兩個(gè)(或在3D情況下為三個(gè))Axis對(duì)象。Axes類及其成員函數(shù)是使用OO接口的主要入口點(diǎn)。
通過調(diào)用add_axes()方法將Axes對(duì)象添加到圖中。它返回軸對(duì)象并在位置rect [left,bottom,width,height]添加一個(gè)軸,其中所有數(shù)量都是圖形寬度和高度的分?jǐn)?shù)。
以下是Axes類的參數(shù) -
rect - 4個(gè)長度序列的[左,底,寬,高]數(shù)量。 # Filename : example.py
# Copyright : 2020 By Nhooo
# Author by : www.jixiangtaizi.com.cn
# Date : 2020-08-08
ax=fig.add_axes([0,0,1,1])
軸類的以下成員函數(shù)為圖添加了不同的元素 -
axes類的legend()方法為繪圖圖形添加了一個(gè)圖例。它需要三個(gè)參數(shù) -
# Filename : example.py # Copyright : 2020 By Nhooo # Author by : www.jixiangtaizi.com.cn # Date : 2020-08-08 ax.legend(handles, labels, loc)
其中l(wèi)abel是一系列字符串,處理一系列Line2D或Patch實(shí)例。loc可以是指定圖例位置的字符串或整數(shù)。
| 位置字符串 | 位置代碼 |
| best | 0 |
| upper right | 1 |
| upper left | 2 |
| lower left | 3 |
| lower right | 4 |
| right | 5 |
| center left | 6 |
| center right | 7 |
| lower center | 8 |
| upper center | 9 |
| center | 10 |
這是軸類的基本方法,它將一個(gè)數(shù)組的值與另一個(gè)數(shù)組的值繪制為線或標(biāo)記。plot()方法可以有一個(gè)可選的格式字符串參數(shù)來指定行和標(biāo)記的顏色,樣式和大小。
| 字符標(biāo)記 | 顏色 |
| b | Blue |
| g | Green |
| r | Red |
| b | Blue |
| c | Cyan |
| m | Magenta |
| y | Yellow |
| k | Black |
| w | White |
| 字符標(biāo)記 | 描述 |
| . | 點(diǎn)標(biāo)記 |
| o | 圓形標(biāo)記 |
| x | X標(biāo)記 |
| D | 鉆石標(biāo)記 |
| H | 六角標(biāo)記 |
| s | 方形標(biāo)記 |
| + | 加號(hào)標(biāo)記 |
| 字符 | 描述 |
| - | 實(shí)線 |
| -- | 虛線 |
| -. | 單點(diǎn)劃線 |
| : | 虛線 |
| H | 六角標(biāo)記 |
以下示例以線圖的形式顯示電視和智能手機(jī)的廣告費(fèi)用和銷售數(shù)字。代表電視的線是帶有黃色和方形標(biāo)記的實(shí)線,而智能手機(jī)線是帶有綠色和圓形標(biāo)記的虛線。
參考實(shí)現(xiàn)代碼 -
# Filename : example.py
# Copyright : 2020 By Nhooo
# Author by : www.jixiangtaizi.com.cn
# Date : 2020-08-08
#! /usr/bin/env python
#coding=utf-8
import matplotlib.pyplot as plt
# 顯示中文設(shè)置...
plt.rcParams['font.sans-serif'] = ['SimHei'] # 步驟一(替換sans-serif字體)
plt.rcParams['axes.unicode_minus'] = False # 步驟二(解決坐標(biāo)軸負(fù)數(shù)的負(fù)號(hào)顯示問題)
y = [1, 4, 9, 16, 25,36,49, 64]
x1 = [1, 16, 30, 42,55, 68, 77,88]
x2 = [1,6,12,18,28, 40, 52, 65]
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
l1 = ax.plot(x1,y,'ys-') # solid line with yellow colour and square marker
l2 = ax.plot(x2,y,'go--') # dash line with green colour and circle marker
ax.legend(labels = ('電視', '智能手機(jī)'), loc = 'upper left') # legend placed at lower right
ax.set_title("廣告對(duì)銷售的影響")
ax.set_xlabel('媒介')
ax.set_ylabel('銷售')
plt.show()執(zhí)行上面示例代碼,得到以下結(jié)果 -
