Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Matplotlib에서 반복되는 화살표를 만드는 방법은 무엇입니까?

<시간/>

Matplotlib에서 순환하는 화살표를 만들기 위해 다음 단계를 수행할 수 있습니다. -

  • 그림 크기를 설정하고 서브플롯 사이 및 주변 여백을 조정합니다.
  • matplotlib에서 화살표 루프를 만들기 위해 make_loop()를 사용할 수 있습니다. 방법.
  • center, radius,ta1,ta2로 wedge 인스턴스를 만듭니다. 및 너비.
  • 화살표를 루프 상단에 두려면 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에서 반복되는 화살표를 만드는 방법은 무엇입니까?