질문:
어떻게 효율적으로 분산형을 생성할 수 있나요? Pandas DataFrame을 사용하여 플롯을 작성합니다. 여기서 마커는 DataFrame?
답변:
matplotlib.pyplot.scatter()를 사용하여 카테고리별로 마커를 구별하는 것은 비효율적일 수 있습니다. 대신 개별 카테고리에 matplotlib.pyplot.plot()을 사용하는 것을 고려해 보세요.
import matplotlib.pyplot as plt import numpy as np import pandas as pd # 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)) # Group by labels groups = df.groupby('label') # Plot fig, ax = plt.subplots() ax.margins(0.05) # Optional padding # Use different markers and colors for each group for name, group in groups: ax.plot(group.x, group.y, marker='o', linestyle='', ms=12, label=name) ax.legend() # Specify custom colors and styles plt.rcParams.update(pd.tools.plotting.mpl_stylesheet) colors = pd.tools.plotting._get_standard_colors(len(groups), color_type='random') ax.set_color_cycle(colors) ax.legend(numpoints=1, loc='upper left') plt.show()
이 코드는 카테고리별로 색상으로 구분된 마커가 있는 산점도를 생성합니다.
위 내용은 Pandas DataFrame에서 카테고리별로 구분된 마커를 사용하여 분산형 차트를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!