Pandas를 사용하여 누적 막대 차트 그리기
질문:
어떻게 만들 수 있나요? 제공된 이미지와 유사한 팬더가 포함된 누적 막대 차트? 현재 데이터 프레임은 "사이트 이름" 및 "악용/NFF" 개수에 대한 별도의 열로 구성되어 있으며 데이터를 정렬하거나 누적 막대 차트를 생성할 수 없습니다.
해결책:
1. 데이터 준비:
"사이트 이름"과 "악용/NFF"로 데이터를 그룹화하고 각 조합의 발생 횟수를 계산하여 새 데이터 프레임을 만듭니다.
2 . 데이터 스택:
.unstack() 메서드를 사용하여 "사이트 이름"을 인덱스로, "Abuse/NFF"를 열로 사용하여 스택 데이터 프레임을 생성합니다.
3. 누락된 값 채우기:
.fillna(0) 메서드를 사용하여 누락된 값을 0으로 채워 처리합니다.
4. 막대 차트 그리기:
종류 매개변수를 'bar'로 설정하고 누적 매개변수를 True로 설정하여 누적 막대 차트를 생성하려면 .plot() 메서드를 사용하세요.
Python 코드:
<code class="python">import pandas as pd import matplotlib.pyplot as plt # Create a dataframe from the CSV file df = pd.read_csv("data.csv") # Group by "Site Name" and "Abuse/NFF" and count occurrences df2 = df.groupby(['Site Name', 'Abuse/NFF'])['Site Name'].count().unstack('Abuse/NFF').fillna(0) # Plot the stacked bar chart df2[['abuse','nff']].plot(kind='bar', stacked=True) plt.show()</code>
출력:
결과 플롯은 원래 질문에 제공된 이미지와 유사하며 누적 개수를 표시합니다. 각 "사이트 이름"에 "abuse" 및 "NFF"가 있습니다.
위 내용은 그룹화된 데이터를 사용하여 Pandas에서 누적 막대 차트를 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!