>백엔드 개발 >파이썬 튜토리얼 >Python에서 범주별로 그룹화된 마커를 사용하여 분산형 차트를 만드는 방법은 무엇입니까?

Python에서 범주별로 그룹화된 마커를 사용하여 분산형 차트를 만드는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-03 20:42:16398검색

How to create a scatter plot with markers grouped by category in Python?

Python에서 범주별로 그룹화된 산점도 그리기

문제:

Pandas에서, 세 번째 항목에 의해 정의된 범주로 정렬된 데이터를 나타내는 마커가 있는 산점도를 어떻게 만들 수 있습니까? 열?

해결책:

범주별로 그룹화된 분산형 차트를 효율적으로 생성하려면 분산형 대신 플롯 기능을 사용하세요. 이는 플롯이 세 번째 열의 값을 숫자 값이 아닌 범주로 해석하기 때문입니다.

다음은 플롯을 사용하는 단계별 솔루션입니다.

  1. 데이터 생성 : x축과 y축의 데이터를 나타내는 열과 카테고리.
  2. 데이터 그룹화: groupby()를 사용하여 각 카테고리에 대한 그룹을 만듭니다.
  3. 데이터 도표화: 각 그룹에 대해 도표화합니다. 플롯을 사용하여 x 및 y 값. 원으로 데이터를 나타내려면 marker='o'를 지정합니다.
  4. 범례 추가: ax.legend()를 사용하여 마커에 해당 범주로 레이블을 지정합니다.

예:

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
np.random.seed(1974)

# Generate Data
num = 20
x, y = np.random.random((2, num))
labels = np.random.choice(['a', 'b', 'c'], num)
df = pd.DataFrame(dict(x=x, y=y, label=labels))

groups = df.groupby('label')

# Plot
fig, ax = plt.subplots()
ax.margins(0.05)
for name, group in groups:
    ax.plot(group.x, group.y, marker='o', linestyle='', ms=12, label=name)
ax.legend()

plt.show()

이렇게 하면 마커가 다음 값으로 분류된 분산형 차트가 생성됩니다. '레이블' 열과 카테고리를 식별하는 범례.

또한 ax.margins() 매개변수 조정, 마커 크기(ms) 설정, 색상 지정을 통해 플롯의 모양을 사용자 정의할 수 있습니다. 마커 팔레트입니다.

위 내용은 Python에서 범주별로 그룹화된 마커를 사용하여 분산형 차트를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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