>  기사  >  백엔드 개발  >  고유한 색상과 레이블을 사용하여 Matplotlib에 범례를 수동으로 추가하는 방법은 무엇입니까?

고유한 색상과 레이블을 사용하여 Matplotlib에 범례를 수동으로 추가하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-22 15:09:03478검색

How to Manually Add Legends in Matplotlib with Distinct Colors and Labels?

Matplotlib에서 수동으로 범례 생성

matplotlib에서 대규모 데이터 세트로 작업할 때 고유한 색상과 레이블이 있는 범례에 항목을 수동으로 추가할 수 있습니다. 유용한 기술이 될 것입니다. 이는 플롯에 데이터를 자동으로 포함할 때 발생할 수 있는 중복을 방지합니다.

원래 접근 방식

원래 접근 방식에서는 다음 코드를 사용하려고 시도했습니다.

ax2.legend(self.labels, colorList[:len(self.labels)])
plt.legend()

여기서 self.labels는 원하는 범례 레이블의 수이고 colorList는 플롯에 사용되는 색상의 하위 집합입니다. 그러나 이 방법은 범례에 항목을 생성하지 않았습니다.

해결책

범례를 수동으로 생성하려면 matplotlib 설명서의 범례 가이드에서 해결책을 제공합니다. 범례에서 핸들로 사용할 수 있는 패치라는 특별한 아티스트를 만드는 작업이 포함됩니다.

import matplotlib.patches as mpatches
import matplotlib.pyplot as plt

# Create a red patch
red_patch = mpatches.Patch(color='red', label='The red data')

이제 이 패치는 빨간색 데이터를 나타내며 범례에 직접 추가할 수 있습니다.

plt.legend(handles=[red_patch])

여러 패치 추가

여러 색상과 라벨을 추가하려면 추가 패치를 만들어 동일한 기술을 적용할 수 있습니다.

blue_patch = mpatches.Patch(color='blue', label='The blue data')
plt.legend(handles=[red_patch, blue_patch])

이렇게 하면 각 패치마다 하나씩, 두 개의 항목이 포함된 범례가 생성됩니다.

위 내용은 고유한 색상과 레이블을 사용하여 Matplotlib에 범례를 수동으로 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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