2017-10-27 8 views
0

다른 csv 파일을 사용하여 여러 그래프를 생성하는 스크립트를 작성하고 있습니다. 두 번째 원형 차트를 만들면 첫 번째 원형 차트의 백분율 값이 있습니다. 아래 이미지와 같이 여기Python matplotlib piechart가 이전 piechart의 레이블과 값을 피하십시오.

## Chart1 
df = pd.read_csv('list1.csv') 
piechart = df.groupby('ABC')['Policy'].nunique() 
ax1 = plt.subplot(111, aspect='equal') 
piechart.plot(kind='pie', ax=ax1, autopct='%1.f%%', 
        startangle=90, shadow=False, legend = False, fontsize=8, title="Policy Chart 1") 
plt.savefig('img1.png', dpi=100) 

#Chart2 
df1 = pd.read_csv('list2.csv') 
piechart2 = df1.groupby('ABC')['Policy'].nunique() 
ax2 = plt.subplot(111, aspect='equal') 
piechart2.plot(kind='pie', ax=ax2, autopct='%1.f%%',startangle=90, shadow=False, legend = False, fontsize=8, title="Policy chart") 
plt.savefig('img2.png', dpi=100) 

그림 2가에 chart1에서 값 및 레이블을 모두 가지고

Pie Chart

이 내 코드입니다. 이 문제를 어떻게 피할 수 있습니까?

또 다른 막대 그래프는 pic1 "plt.savefig ("pic1 ", dpi = 100)"로 저장되어 있는데, img1.png와 pic.png를 한 이미지에 저장하는 방법은 무엇입니까? (왼쪽의 bar grapgh와 한 그림의 오른쪽의 piechart).

미리 감사드립니다.

+1

체크 아웃이 게시물 : https://stackoverflow.com/questions/741877/how-do-i-tell-matplotlib-that- i-am-done-a-plot 플롯 – Vico

답변

0

figure을 사용하여 첫 번째 플롯 이후에 새로운 플롯을 생성하거나 close을 사용할 수 있습니다. (데이비드 Cournapeau)

또는 사용 :

plt.close() 또는 plt.clf()

+0

감사합니다! 이 작품을 .. 내 두 번째 질문을 어떻게 달성합니까? . 하나의 이미지에 막대 그래프와 파이 차트 모두 저장 – Rachel

+0

matplotlib를 사용하여 동일한 코드에서 막대 그래프를 만들었습니까? – Vico

+0

예, 동일한 코드와 matplotlib를 사용합니다. 또한 "policy"의 총 수와 차트의 카운트 수를 표시하는 것이 가능합니다. – Rachel