[python] pandas.Series 히스토그램 플롯을 파일에 저장

ipython Notebook에서 먼저 pandas Series 객체를 만든 다음 인스턴스 메서드 .hist ()를 호출하여 브라우저에 그림이 표시됩니다.

이 그림을 파일에 저장하는 방법이 궁금합니다 (마우스 오른쪽 버튼을 클릭하고 다른 이름으로 저장하는 것이 아니라 스크립트에 필요한 명령).



답변

다음 Figure.savefig()과 같이 방법을 사용하십시오 .

ax = s.hist()  # s is an instance of Series
fig = ax.get_figure()
fig.savefig('/path/to/figure.pdf')

로 끝날 필요는 없으며 pdf많은 옵션이 있습니다. 문서를 확인하십시오 .

또는 pyplot인터페이스 를 사용하고을 savefig함수로 호출 하여 가장 최근에 생성 된 Figure를 저장할 수 있습니다.

import matplotlib.pyplot as plt
s.hist()
plt.savefig('path/to/figure.pdf')  # saves the current figure


답변

다음을 사용할 수 있습니다 ax.figure.savefig().

import pandas as pd

s = pd.Series([0, 1])
ax = s.plot.hist()
ax.figure.savefig('demo-file.pdf')

이것은 ax.get_figure().savefig()Philip Cloud의 답변에서 제안한 것보다 실질적인 이점이 없으므로 가장 미적으로 만족스러운 옵션을 선택할 수 있습니다. 실제로 다음 get_figure()을 반환합니다self.figure .

# Source from snippet linked above
def get_figure(self):
    """Return the `.Figure` instance the artist belongs to."""
    return self.figure


답변