Figure 생성
우선 객체 지향 방식에서는 figure 객체를 인스턴스화한 후, 해당 객체에서 메서드나 속성을 호출하여 그래프를 그립니다.
figure 객체를 생성한 후, 해당 객체에서 메서드나 속성을 호출하는 것입니다. 특히, 여러 개의 플롯을 포함한 캔버스를 다룰 때 이 방법이 더 효율적입니다.
즉, 여러 플롯이 있는 복잡한 그래프를 구성할 때, 각 플롯을 독립적으로 제어할 수 있어 더욱 유연하게 그래프를 다룰 수 있습니다.
# 비어있는 캔버스 그리는 구문입니다.
fig = plt.figure()
# 도형에 좌표축을 추가합니다.
axes = fig.add_axes([0, 0, 1, 1]) # left, bottom, width, height (range 0 ~ 1) 캔버스 위치 또한 조정 가능
# 만든 축에 그래프를 그립니다.
axes.plot(x, y)
plt.show()
캔버스에 다른 좌표축 추가하기
하나의 캔버스에 여러 개의 축을 추가하여 다양한 위치에 여러 플롯을 배치할 수 있고, 각각 독립적으로 제어할 수 있습니다. 이는 다중 플롯이나 복잡한 그래프 레이아웃을 만들 때 매우 유용합니다.
fig = plt.figure()
axes1 = fig.add_axes([0, 0, 1, 1]) # Large figure
axes2 = fig.add_axes([0.2, 0.5, 0.25, 0.25]) # Smaller figure
# Larger Figure Axes 1
axes1.plot(a, b)
# 축에 추가하려면 set_을 사용하십시오
axes1.set_xlabel('X Label')
axes1.set_ylabel('Y Label')
axes1.set_title('Big Figure')
# Insert Figure Axes 2
axes2.plot(a,b)
axes2.set_xlim(8,10)
axes2.set_ylim(4000,10000)
axes2.set_xlabel('X')
axes2.set_ylabel('Y')
axes2.set_title('Zoomed In');
위의 사진 처럼 캔버스 안에 또 다른 캔버스를 추가하여 해당 그래프가 zoom된 느낌으로도 출력 가능합니다.
밖의 축에 캔버스 추가
fig = plt.figure(figsize=(12,8))
axes1 = fig.add_axes([0, 0, 1, 1]) # Full figure
axes2 = fig.add_axes([1, 1, 0.25, 0.25]) # 오른쪽 코너에 만들수 있게 합니다.
# Larger Figure Axes 1
axes1.plot(x,y)
# Insert Figure Axes 2
axes2.plot(x,y)
fig.savefig('test.png',bbox_inches='tight') # test.png로 저장
이처럼 캔버스 밖으로도 캔버스를 추가할 수 있습니다.
이상입니다.
728x90
'Data Analyst > ML' 카테고리의 다른 글
[Zero-Base] Machine Learning - 1 (0) | 2024.09.27 |
---|---|
ML - Matplotlib SubPlots (1) | 2024.09.16 |
ML - Matplotlib-Basics (0) | 2024.09.10 |
ML - PANDAS(Pivot-Tables) (0) | 2024.09.10 |
ML - PANDAS(Text Methods for String Data) (0) | 2024.09.03 |