Matplotlib面向对象接口

Matplotlib面向对象接口 首页 / Matplotlib入门教程 / Matplotlib面向对象接口

尽管使用 matplotlib.pyplot 模块可以轻松快速地生成图,但是建议使用面向对象的方法,因为它可以更好地控制和自定义图。

在面向对象的界面中,Pyplot仅用于一些功能,例如图形创建,并且用户显式创建并跟踪图形和轴对象,在此级别上,用户使用Pyplot创建图形,并通过这些图形可以创建一个或多个轴对象,然后,将这些轴对象用于绘图操作。

首先,无涯教程创建一个提供空画布的图形实例。

链接:https://www.learnfk.comhttps://www.learnfk.com/matplotlib/matplotlib-object-oriented-interface.html

来源:LearnFk无涯教程网

fig = plt.figure()

现在将轴添加到图形中, add_axes()方法需要由4个元素组成的列表对象 ,分别对应于该图的左侧,底部,宽度和高度。每个数字必须介于0和1之间-

ax=fig.add_axes([0,0,1,1])

设置x和y轴以及标题的标签-

ax.set_title("sine wave")
ax.set_xlabel('angle')
ax.set_ylabel('sine')

调用轴对象的plot()方法。

无涯教程网

ax.plot(x,y)

如果您使用的是Jupyter notebook,则使用%matplotlib内联指令, pyplot模块的otherwistshow()函数显示绘图。

执行以下代码-

from matplotlib import pyplot as plt
import numpy as np
import math
x = np.arange(0, math.pi*2, 0.05)
y = np.sin(x)
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.plot(x,y)
ax.set_title("sine wave")
ax.set_xlabel('angle')
ax.set_ylabel('sine')
plt.show()

上面的代码行生成以下输出-

Add Axes Method

在Jupyter Notebook中运行时,相同的代码显示输出,如下所示-

Jupyter Notebook 输出

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

教程推荐

云计算的必修小课 -〔吕蕴偲〕

JavaScript进阶实战课 -〔石川〕

说透低代码 -〔陈旭〕

全链路压测实战30讲 -〔高楼〕

PyTorch深度学习实战 -〔方远〕

说透数字化转型 -〔付晓岩〕

苏杰的产品创新课 -〔苏杰〕

深入拆解Tomcat & Jetty -〔李号双〕

TensorFlow快速入门与实战 -〔彭靖田〕

好记忆不如烂笔头。留下您的足迹吧 :)