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

Matplotlib에서 원/패치의 교차점 색칠하기


Matplotlib에서 원/패치의 교차점에 색상을 지정하려면 다음 단계를 수행할 수 있습니다. -

  • 그림 크기를 설정하고 서브플롯 사이 및 주변 여백을 조정합니다.
  • a 만들기 및 b 포인트.
  • 두 점에서 왼쪽, 오른쪽 및 중간 영역을 가져옵니다. ab.
  • gca()를 사용하여 현재 축 가져오기 방법
  • 다양한 색상과 섹션으로 패치를 추가합니다.
  • X 및 Y축 배율을 설정합니다.
  • 종횡비를 동일하게 설정합니다.
  • 축을 끕니다.
  • 그림을 표시하려면 show()를 사용하세요. 방법.

예시

import shapely.geometry as sg
import matplotlib.pyplot as plt
import descartes

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

a = sg.Point(-.5, 0).buffer(1.)
b = sg.Point(0.5, 0).buffer(1.)

left = a.difference(b)
right = b.difference(a)
middle = a.intersection(b)

ax = plt.gca()
ax.add_patch(descartes.PolygonPatch(left, fc='b', ec='k'))
ax.add_patch(descartes.PolygonPatch(right, fc='r', ec='k'))
ax.add_patch(descartes.PolygonPatch(middle, fc='g', ec='k'))

ax.set_xlim(-2, 2)

ax.set_ylim(-2, 2)

ax.set_aspect('equal')

ax.axis('off')

plt.show()

출력

Matplotlib에서 원/패치의 교차점 색칠하기