Python| Matplotlib 图形绘图使用面向对象的 API
在面向对象的 API 中,首先,我们创建一个画布,我们必须在其上绘制图形,然后绘制图形。许多人更喜欢面向对象的 API,因为与函数式 API 相比,它更易于使用。
让我们尝试通过一些例子来理解这一点。
示例 #1:
# importing matplotlib library
import matplotlib.pyplot as plt
# x axis values
x =[0, 5, 3, 6, 8, 4, 5, 7]
# y axis values
y =[5, 3, 6, 3, 7, 5, 6, 8]
# creating the canvas
fig = plt.figure()
# setting the size of canvas
axes = fig.add_axes([0, 0, 1, 1])
# plotting the graph
axes.plot(x, y, 'mo--')
# displaying the graph
plt.show()
输出:
在第一个示例中,一切都非常清楚,但是有一点需要关注,“设置画布的大小”,这基本上意味着设置要在其上绘制图形的图形的大小,语法是这样的。
add_axes([left, bottom, width, height])
left、bottom、height 和 width 的值介于 0 到 1 之间。再举一个例子,让你更清楚这个概念。
示例 #2:
# importing matplotlib library
import matplotlib.pyplot as plt
# x-axis values
x =[0, 1, 2, 3, 4, 5, 6]
# y-axis values
y =[0, 1, 3, 6, 9, 12, 17]
# creating the canvas
fig = plt.figure()
# setting size of first canvas
axes1 = fig.add_axes([0, 0, 0.7, 1])
# plotting graph of first canvas
axes1.plot(x, y, 'mo--')
# setting size of second canvas
axes2 = fig.add_axes([0.1, 0.5, 0.3, 0.3])
# plotting graph of second canvas
axes2.plot(x, y, 'go--')
# displaying both graphs
plt.show()
输出: