English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Axes对象是具有数据空间的图像区域。给定的图形可以包含许多轴,但给定的Axes对象只能在一个图中。轴包含两个(或在3D情况下为三个)Axis对象。Axes类及其成员函数是使用OO接口的主要入口点。
通过调用add_axes()方法将Axes对象添加到图中。它返回轴对象并在位置rect [left,bottom,width,height]添加一个轴,其中所有数量都是图形宽度和高度的分数。
以下是Axes类的参数 -
rect - 4个长度序列的[左,底,宽,高]数量。 # Filename : example.py
# Copyright : 2020 By w3codebox
# Author by : it.oldtoolbag.com
# Date : 2020-08-08
ax=fig.add_axes([0,0,1,1])
轴类的以下成员函数为图添加了不同的元素 -
axes类的legend()方法为绘图图形添加了一个图例。它需要三个参数 -
# Filename : example.py # Copyright : 2020 By w3codebox # Author by : it.oldtoolbag.com # Date : 2020-08-08 ax.legend(handles, labels, loc)
其中label是一系列字符串,处理一系列Line2D或Patch实例。loc可以是指定图例位置的字符串或整数。
位置字符串 | 位置代码 |
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 |
Questo è un metodo fondamentale della classe asse, che disegna i valori di un array con i valori di un altro array come linee o marchi. Il metodo plot() può avere un parametro opzionale di stringa di formato per specificare il colore, lo stile e la dimensione delle linee e dei marchi.
Marchio a carattere | Colore |
b | Blu |
g | Verde |
r | Rosso |
b | Blu |
c | Ciano |
m | Magenta |
y | Giallo |
k | Nero |
w | Bianco |
Marchio a carattere | Descrizione |
. | Marchio a punto |
o | Marchio circolare |
x | Marchio X |
D | Marchio a diamante |
H | Marchio a sei punte |
s | Marchio quadrato |
+ | Marchio a plus |
Carattere | Descrizione |
- | Linea continua |
-- | Tratteggio |
-. | Tratteggio singolo |
: | Tratteggio |
H | Marchio a sei punte |
Il seguente esempio visualizza le spese pubblicitarie e i numeri di vendita di televisioni e smartphone in forma di grafico a linee. La linea rappresentativa della televisione è una linea continua con un marchio giallo e quadrato, mentre la linea dello smartphone è una linea tratteggiata con un marchio verde e circolare.
Implementazione di riferimento -
# Filename : example.py # Copyright : 2020 By w3codebox # Author by : it.oldtoolbag.com # Date : 2020-08-08 #! /usr/bin/env python #coding=utf-8 import matplotlib.pyplot as plt # 显示中文设置... plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体) plt.rcParams['axes.unicode_minus'] = False # 步骤二(解决坐标轴负数的负号显示问题) 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-') # linea solida con colore giallo e marker quadrato l2 = ax.plot(x2, y, 'go--') # linea tratteggiata con colore verde e marker circolare ax.legend(labels = ('Televisione', 'Smartphone'), loc = 'upper left') # posizionata in basso a destra ax.set_title("Influenza dell'annuncio sulle vendite") ax.set_xlabel('Media') ax.set_ylabel('Vendite') plt.show()
Esegui il codice di esempio sopra per ottenere i seguenti risultati -