그래프를 그리는 Python의 라이브러리에는 차트를 제공할 뿐만 아니라 플래그와 같은 다른 다이어그램을 그릴 수 있는 유연성도 제공하는 매우 광범위한 기능이 있습니다. 그런 의미에서 이러한 모듈에는 예술적인 감각이 있습니다. 이 기사에서는 numpy 및 matplotlib 라이브러리를 사용하여 인도 국기를 그리는 방법을 볼 것입니다.
접근법
-
너비가 같은 직사각형 3개를 만들고 적절한 색상과 테두리로 그립니다.
-
pyplot 기능을 사용하여 가운데 직사각형의 중심에 Ashok Chakra의 원을 그립니다.
-
numpy와 matplotlib를 사용하여 Ashok 차크라 내부에 24개의 선을 그립니다.
-
위의 모든 도면에서 우리는 필요한 깃발의 최종 크기 요구 사항과 일치하도록 색상, 테두리, 반경 및 선 길이를 언급했습니다.
프로그램
우리는 다음 프로그램을 사용하여 위의 접근 방식을 구현합니다.
예시
import numpy as np import matplotlib.pyplot as py import matplotlib.patches as patch #Plotting the tri colours in national flag a = patch.Rectangle((0,1), width=12, height=2, facecolor='green', edgecolor='grey') b = patch.Rectangle((0,3), width=12, height=2, facecolor='white', edgecolor='grey') c = patch.Rectangle((0,5), width=12, height=2, facecolor='#FF9933', edgecolor='grey') m,n = py.subplots() n.add_patch(a) n.add_patch(b) n.add_patch(c) #AshokChakra Circle radius=0.8 py.plot(6,4, marker = 'o', markerfacecolor = '#000088ff', markersize = 9.5) chakra = py.Circle((6, 4), radius, color='#000088ff', fill=False, linewidth=7) n.add_artist(chakra) #24 spokes in AshokChakra for i in range(0,24): p = 6 + radius/2 * np.cos(np.pi*i/12 + np.pi/48) q = 6 + radius/2 * np.cos(np.pi*i/12 - np.pi/48) r = 4 + radius/2 * np.sin(np.pi*i/12 + np.pi/48) s = 4 + radius/2 * np.sin(np.pi*i/12 - np.pi/48) t = 6 + radius * np.cos(np.pi*i/12) u = 4 + radius * np.sin(np.pi*i/12) n.add_patch(patch.Polygon([[6,4], [p,r], [t,u],[q,s]], fill=True, closed=True, color='#000088ff')) py.axis('equal') py.show()
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -