Matplotlib面向对象接口

Matplotlib面向对象接口

Matplotlib面向对象接口

  虽然使用matplotlib.pyplot模块很容易快速生成绘图,但建议使用面向对象的方法,因为它可以更好地控制和自定义绘图。大多数函数也可在 matplotlib.axes.Axes类中使用。

  使用更正式的面向对象方法背后的主要思想是创建图形对象,然后只调用该对象的方法或属性。这种方法有助于更好地处理上面有多个图的画布。

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

  推荐:Matplotlib PyLab模块

创建图形实例

  首先,我们创建一个提供空画布的图形实例。

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 笔记本,则必须发出 %matplotlib 内联指令;pyplot 模块的 otherwistshow() 函数显示绘图。

  推荐:Matplotlib简单绘图

  执行以下代码 –

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()

  输出:

创建图形实例
Matplotlib面向对象接口

  在 Jupyter notebook 中运行时的相同代码显示如下所示的输出:

在Jupyter-notebook中运行
Matplotlib面向对象接口

  推荐:Matplotlib教程

给文章评分

晓得博客,版权所有丨如未注明,均为原创
晓得博客 » Matplotlib面向对象接口

转载请保留链接:https://www.pythonthree.com/matplotlib-object-oriented-interface/

Claude、Netflix、Midjourney、Chatgpt Plus账号购买,ChatGPT API购买,优惠码XDBK,用户购买的时候输入优惠码可以打95折

Chatgpt-Plus注册购买共享账号
滚动至顶部