Matplotlib에서 다양한 유형의 선 그리기
Matplotlib는 기본적으로 제공하는 몇 가지 선 스타일 외에도, dashes 파라미터를 활용하면 원하는 대시(dash) 패턴을 자유롭게 조합하여 훨씬 더 다양한 종류의 선을 그릴 수 있습니다. 이 기능은 보고서나 시각화 자료에서 여러 데이터 계열을 구분할 때 특히 유용합니다.
구현 단계
- 그림(figure) 크기를 설정하고, 서브플롯 사이 및 주변의 여백(padding)을 자동으로 조정합니다.
- NumPy를 사용하여 x, y 데이터 포인트를 생성합니다.
- dashes 배열과 함께 plot() 메서드를 호출하여 데이터를 플로팅합니다.
- show() 메서드를 사용해 그래프를 화면에 표시합니다.
dashes 파라미터 이해하기
dashes 인자는 [선의 길이, 공백의 길이, ...] 형태의 리스트를 받습니다. 예를 들어 dashes=[1, 1, 2, 1, 3]은 "1포인트 선 → 1포인트 공백 → 2포인트 선 → 1포인트 공백 → 3포인트 선"이라는 패턴이 반복 적용됨을 의미합니다. 이 값들을 다양하게 조합하면 점선, 이중 대시, 불규칙한 대시 등 원하는 어떤 선 스타일이든 만들 수 있습니다.
예제 코드
from matplotlib import pyplot as plt import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True x = np.linspace(-10, 10, 100) y = np.sin(x) plt.plot(x, y, dashes=[1, 1, 2, 1, 3], linewidth=7, color='red') plt.show()
코드 설명
np.linspace(-10, 10, 100)은 -10부터 10까지 균등하게 나눈 100개의 x값을 생성하고, np.sin(x)로 사인 곡선의 y값을 계산합니다. linewidth=7은 선의 굵기를 지정하며, color='red'로 빨간색 선을 설정했습니다. 핵심은 dashes=[1, 1, 2, 1, 3] 부분으로, 이 배열에 정의된 패턴에 따라 선이 교차하는 대시와 공백으로 렌더링됩니다.
실행 결과
