如何在Matplotlib中制作一个循环的箭头?

如何在Matplotlib中制作一个循环的箭头?

为了在Matplotlib中制作一个循环的箭头,我们可以按以下步骤操作−

  • 设置图形大小,并调整子图周围和之间的填充。
  • 为了使Matplotlib中的箭头循环,我们可以使用 make_loop() 方法。
  • 使用 中心,半径,theta1,theta2和宽度 创建一个楔形实例。
  • 为了将箭头置于循环顶部,请使用 PathCollection。
  • 将收集补丁添加到当前轴。
  • 使用 show() 方法显示图形。

例子

from matplotlib import pyplot as plt, patches, collections

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

def make_loop(center, radius, theta1=-30, theta2=180):
    rwidth = 0.02
    ring = patches.Wedge(center, radius, theta1, theta2, width=rwidth)
    offset = 0.02
    xcent = center[0] - radius + (rwidth / 2)
    left = [xcent - offset, center[1]]
    right = [xcent + offset, center[1]]
    bottom = [(left[0] + right[0]) / 2., center[1] - 0.05]
    arrow = plt.Polygon([left, right, bottom, left])
    p = collections.PatchCollection(
        [ring, arrow],
        edgecolor='orange',
        facecolor='red'
    )
    ax.add_collection(p)

fig, ax = plt.subplots()
make_loop(center=(.5, .7), radius=.1)

plt.show()

输出

如何在Matplotlib中制作一个循环的箭头?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程