Matplotlib으로 그래프를 작성할 때 특정 선을 화면에서 숨기고 싶은 경우가 종종 있습니다. 이럴 때 line.remove() 메서드를 사용하면 간단하게 해당 선을 제거할 수 있습니다.
구현 단계
- 그림(figure) 크기를 설정하고 서브플롯 주변 및 사이의 여백을 조정합니다.
- numpy를 사용하여 x, y1, y2 데이터 포인트를 생성합니다.
- plot() 메서드를 호출하여 line1과 line2 두 개의 선을 그립니다.
- 선을 숨기려면 line.remove() 메서드를 호출합니다.
- 범례(legend)를 그림의 오른쪽 상단에 배치합니다.
- show() 메서드를 사용하여 그래프를 화면에 표시합니다.
예제 코드
import matplotlib.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) y1 = np.sin(x) y2 = np.cos(x) line1, = plt.plot(x, y1, label="Line 1") line2, = plt.plot(x, y2, label="Line 2") # line1.remove() plt.legend(loc="upper right") plt.show()
실행 결과

위 코드를 실행하면 사인 곡선(Line 1)과 코사인 곡선(Line 2)이 모두 그래프에 표시됩니다.
이제 코드에서 # line1.remove() 부분의 주석을 해제한 뒤 다시 실행해 보세요. 그러면 Line 1이 그래프에서 사라지고 Line 2만 남게 됩니다.

참고: set_visible()을 활용한 대안
remove() 대신 line.set_visible(False)를 사용할 수도 있습니다. remove()는 선 객체를 그래프에서 완전히 제거하는 반면, set_visible(False)는 객체 자체는 유지한 채 화면에서만 숨겨주기 때문에 나중에 set_visible(True)로 손쉽게 다시 표시할 수 있다는 장점이 있습니다. 일시적으로 선을 숨겼다가 복원해야 하는 경우에는 set_visible() 방식이 더 적합합니다.