>  기사  >  백엔드 개발  >  Matplotlib에서 여러 하위 그림에 대한 통합 범례를 만드는 방법은 무엇입니까?

Matplotlib에서 여러 하위 그림에 대한 통합 범례를 만드는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-04 02:29:30161검색

How to Create a Unified Legend for Multiple Subplots in Matplotlib?

Matplotlib에서 여러 하위 그림에 대한 통합 범례 생성

Matplotlib에서 여러 하위 그림에 걸쳐 데이터를 그릴 때 모든 플롯에 대해 단일 범례를 표시하는 것이 바람직할 수 있습니다. . 이는 서브플롯이 유사한 선 스타일, 색상 또는 레이블을 공유하는 경우 특히 유용합니다. 범례를 통합하면 시각화를 단순화하고 복잡함을 줄이는 데 도움이 됩니다.

이를 달성하기 위해 Matplotlib는 get_legend_handles_labels()라는 편리한 함수를 제공합니다. 이 함수는 그리드 내의 마지막 축에서 호출될 수 있으며, 플로팅하는 동안 사용된 label= 인수에서 필요한 모든 범례 정보를 수집합니다. 그런 다음 수집된 핸들과 레이블을 사용하여 전체 그림에 대한 단일 범례를 생성할 수 있습니다.

예를 들어 3x3 격자로 배열된 9개의 하위 플롯이 있는 경우 다음을 사용하여 마지막 하위 플롯에서 범례 요소를 얻을 수 있습니다. 다음 코드는 다음과 같습니다.

handles, labels = ax.get_legend_handles_labels()

여기서 ax는 그리드의 마지막 하위 플롯 축을 나타냅니다. 수집된 핸들과 레이블을 사용하여 fig.legend()를 사용하여 범례를 생성할 수 있습니다.

fig.legend(handles, labels, loc='upper center')

이 경우 범례는 그림 내 '상단 중앙' 위치에 배치됩니다. loc= 인수를 사용자 정의하여 그림 내의 아무 곳에나 범례를 배치할 수 있습니다.

또는 Axes 인터페이스 대신 pyplot 인터페이스를 사용하는 경우 다음 코드를 사용하여 범례 핸들 및 레이블을 검색할 수 있습니다.

handles, labels = plt.gca().get_legend_handles_labels()

여기서 plt.gca()는 현재 축 객체를 반환합니다.

위 내용은 Matplotlib에서 여러 하위 그림에 대한 통합 범례를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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