>  기사  >  백엔드 개발  >  Matplotlib에서 여러 사용자 정의 범례 항목을 만들고 추가하는 방법은 무엇입니까?

Matplotlib에서 여러 사용자 정의 범례 항목을 만들고 추가하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-22 15:08:03396검색

How to Create and Add Multiple Custom Legend Items in Matplotlib?

자동 범례 처리 vs. 수동 범례 생성

matplotlib로 작업할 때 색상으로 구성된 범례 항목을 수동으로 추가하는 것이 종종 바람직합니다. 그리고 라벨. 그러나 여러 범례 항목을 수동으로 추가하는 것은 번거롭고 중복이 발생할 수 있습니다.

사용자가 설명한 접근 방식인 ax2.legend(self.labels,colorList[:len(self.labels)])는 그렇지 않습니다. matplotlib가 범례 항목을 수동으로 생성하기 위한 보다 우아한 솔루션을 제공하기 때문에 예상대로 작동하는 것처럼 보입니다.

사용자 정의 범례 항목 생성

범례 가이드에서 제안한 대로 다음을 사용할 수 있습니다. 사용자 정의 범례 항목을 정의하는 Patches 클래스. 패치는 색상과 라벨로 지정할 수 있는 직사각형 영역입니다. 예를 들면 다음과 같습니다.

<code class="python">import matplotlib.patches as mpatches

red_patch = mpatches.Patch(color='red', label='The red data')</code>

이렇게 하면 빨간색 직사각형 영역과 "빨간색 데이터"라는 레이블이 있는 범례 패치가 생성됩니다.

여러 범례 항목 추가

범례에 여러 패치를 추가하려면 plt.legend 함수를 사용하고 패치 목록을 핸들 인수로 전달할 수 있습니다. 예를 들면 다음과 같습니다.

<code class="python">blue_patch = mpatches.Patch(color='blue', label='The blue data')

plt.legend(handles=[red_patch, blue_patch])</code>

이렇게 하면 빨간색 데이터와 파란색 데이터에 각각 하나씩 두 개의 항목이 있는 범례가 생성됩니다.

이 접근 방식을 활용하면 수동으로 생성하고 많은 수의 항목을 처리하는 경우에도 범례의 내용을 제어할 수 있습니다.

위 내용은 Matplotlib에서 여러 사용자 정의 범례 항목을 만들고 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.