Matplotlib에서 여러 줄을 채우는 방법

matplotlib.pyplot.fill_between() 메서드를 사용하여 Matplotlib에서 여러 줄 사이의 영역을 채울 수 있습니다. fill_between()함수는 한 번에 두 줄 사이의 공간을 채우지 만 한 쌍의 줄을 선택하여 여러 줄 사이의 영역을 채울 수 있습니다.

import numpy as np
import matplotlib.pyplot as plt 

x=np.arange(0,5,0.02)

y1=8-4*x
y2=6-x
y3=2-2*x

plt.plot(x,y1,color="red",label="8-4x")
plt.plot(x,y2,color="blue",label="6-x")
plt.plot(x,y3,color="green",label="2-2x")
plt.legend()
plt.show()

산출:

여러 줄 사이의 사전 조건 채우기 Matplotlib

그림에서 다음 조건이 충족되도록 다각형을 채워야합니다.

y <= 8- 4x
y <= 6 - x
y >= 2 - 2x
y >= 0

Matplotlib에서 여러 줄 사이 채우기

import numpy as np
import matplotlib.pyplot as plt 

x=np.arange(0,5,0.02)

y1=2-2*x
y2=6-x
y3=8-4*x

y4=np.minimum(y2,y3)

plt.plot(x,y1,color="red",label="2-2x")
plt.plot(x,y2,color="blue",label="6-x")
plt.plot(x,y3,color="green",label="8-4x")
plt.ylim(0, 10)
plt.fill_between(x, y1, y4, color='yellow')
plt.legend()
plt.show()

산출:

여러 줄 사이 채우기 Matplotlib

위의 조건을 만족시키기 위해 우리는 y 축 제한을0에서10 사이로 설정하여y> = 0을 첫 번째 단계로 설정합니다.

y = 6-xy = 8-4x 선이 서로 교차하므로y <= 8-4xy <= 6-x가 모두 충족되는지 확인하기 위해minimum()메서드를 사용하여 두 조건을 따르는 점을 선택합니다.

마지막으로 y1y4사이의 영역을 채워 요구 사항에 지정된 다각형 영역을 제공합니다.

또는 영역의 모서리 점 역할을하는 선의 교차점을 찾을 수 있습니다. 꼭지점을 알고 나면matplotlib.pyplot.fill()메서드를 사용하여 다각형을 채울 수 있습니다.

import matplotlib.pyplot as plt

x = [2,4,2,0]
y = [4,2,0,2]

plt.fill(x,y)
plt.show()

산출:

채우기 방법을 사용하여 꼭지점이있는 다각형 플로팅

이 메서드는 모서리 점(2,4),(4,2),(2,0)(0,2)로 다각형을 채 웁니다.

목록 x는 다각형 모서리 점의 x 좌표를 나타내고 y는 다각형 모서리 점의 y 좌표를 나타냅니다.