Axes对象是具有数据空间的图像区域。给定的图形可以包含许多轴,但给定的Axes对象只能在一个图中。轴包含两个(或在3D情况下为三个)Axis对象。Axes类及其成员函数是使用OO接口的主要入口点。
通过调用add_axes()方法将Axes对象添加到图中。它返回轴对象并在位置rect [left,bottom,width,height]添加一个轴,其中所有数量都是图形宽度和高度的分数。
以下是Axes类的参数 -
rect - 4个长度序列的[左,底,宽,高]数量。 # Filename : example.py
# Copyright : 2020 By Nhooo
# Author by : www.cainiaojc.com
# Date : 2020-08-08
ax=fig.add_axes([0,0,1,1])
轴类的以下成员函数为图添加了不同的元素 -
axes类的legend()方法为绘图图形添加了一个图例。它需要三个参数 -
# Filename : example.py # Copyright : 2020 By Nhooo # Author by : www.cainiaojc.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 |
这是轴类的基本方法,它将一个数组的值与另一个数组的值绘制为线或标记。plot()方法可以有一个可选的格式字符串参数来指定行和标记的颜色,样式和大小。
字符标记 | 颜色 |
b | Blue |
g | Green |
r | Red |
b | Blue |
c | Cyan |
m | Magenta |
y | Yellow |
k | Black |
w | White |
字符标记 | 描述 |
. | 点标记 |
o | 圆形标记 |
x | X标记 |
D | 钻石标记 |
H | 六角标记 |
s | 方形标记 |
+ | 加号标记 |
字符 | 描述 |
- | 实线 |
-- | 虚线 |
-. | 单点划线 |
: | 虚线 |
H | 六角标记 |
以下示例以线图的形式显示电视和智能手机的广告费用和销售数字。代表电视的线是带有黄色和方形标记的实线,而智能手机线是带有绿色和圆形标记的虚线。
参考实现代码 -
# Filename : example.py # Copyright : 2020 By Nhooo # Author by : www.cainiaojc.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-') # 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 = ('电视', '智能手机'), loc = 'upper left') # legend placed at lower right ax.set_title("广告对销售的影响") ax.set_xlabel('媒介') ax.set_ylabel('销售') plt.show()
执行上面示例代码,得到以下结果 -