2017-10-24 3 views
0

아래 코드를 가지고 있는데, 원하는 방식으로 데이터 프레임을 정확히 생성하지만 그룹화 된 막 대형 차트를 통해 그래프를 그릴 수 없습니다.이것을 어떻게 막대 그래프로 그래프로 나타낼 수 있습니까?

X 축을 담당하고 싶습니다. Y 축이 최고

enter image description here

import pandas as pd 
import matplotlib 

data = pd.read_excel('audit.xls', skiprows=2, index_col = 'Employee Department') 
data.rename(columns = {'Curriculum Name':'Curriculum','Organization Employee Number':'Employee_Number', 'Employee Name': 'Employee','Employee Email':'Email', 'Employee Status':'Status', 'Date Assigned':'Assigned','Completion Date':'Completed'}, inplace=True) 
data.drop(['Employee_Number', 'Employee','Assigned', 'Status', 'Manager Name', 'Manager Email', 'Completion Status','Unnamed: 1', 'Unnamed: 5', 'Unnamed: 6'], axis=1, inplace=True) 

new_data = data.query('Curriculum ==["CARB Security Training","OIS Support Training","Legal EO Training"]') 
new_data2 = new_data.groupby('Employee Department').count().eval('Remaining = Email - Completed', inplace=False) 

new_data2 

의 나머지 정보를 완료에 나는 그게 Excel에서 어떻게이기 때문에 어떻게 든 피벗 테이블로 변환 할 필요가 가정

+0

는 [재현 예]를 제공하세요 (https://stackoverflow.com/questions/5963269/how- to-make-a-great-r-reproducible-example) – ako

+0

matplotlib로 시각화해야합니까, 아니면 웹 프레임 워크가 가능합니까? 그렇다면 : [ChartJS] (http://chartjs.org) 또는 [C3] (http://c3js.org) [D3] (http : // d3js.org). 두 경우 모두 JSON 형식으로 변환해야합니다. –

+0

어떤 유형의 예제가 있습니까? – davidjbeiler

답변

1

을 가지고 new_data2[['Completed','Remaining']].plot.bar(stacked=True)

다음 예는 나를 위해 작동 :이 같은 노력

df = pd.DataFrame(np.arange(1,10).reshape(3,3), columns=['Email', 'Completed', 'Remaining'], index=['A', 'B', 'C']) 
df[['Completed', 'Remaining']].plot.bar(stacked=True) 

enter image description here

+0

new_data2 하나가 작동하지 않았고, 오류가 발생했습니다. max_open_warning, runtimewarning – davidjbeiler

+0

'max_open_warning'은 일반적으로 너무 많은 숫자를 생성하기 때문에 발생합니다. 귀하의 코드는 얼마나 많은 숫자를 생성합니까? –

+0

무엇을 의미합니까? 나는 문서를 Excel에서 약 1600 줄 밖에 가지고 있지 않다. – davidjbeiler

관련 문제