[python] 팬더 플롯이 표시되지 않음

스크립트 (IPython 아님)에서 이것을 사용하면 아무 일도 일어나지 않습니다. 즉, 플롯 창이 나타나지 않습니다.

import numpy as np
import pandas as pd
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts.plot()

를 추가해도 time.sleep(5)여전히 아무것도 없습니다. 왜?

matplotlib를 수동으로 호출하지 않고도 수행 할 수있는 방법이 있습니까?



답변

플롯을 만든 후에는 matplotlib에 알려야 show합니다. 작업을 수행하는 일반적인 방법은 가져 와서 matplotlib.pyplot호출 show하는 것입니다.

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts.plot()
plt.show()

그렇게하지 않기를 요청했기 때문에 (이유?) 다음을 사용할 수 있습니다. [참고 : 더 이상 최신 버전에서는 작동하지 않는 것 pandas같습니다.] :

import numpy as np
import pandas as pd
ts = pd.Series(np.random.randn(1000), index=pd.date_range('1/1/2000', periods=1000))
ts.plot()
pd.tseries.plotting.pylab.show()

하지만 거기에서하는 일은 matplotlib에서 가져온 어딘가를 찾고 거기 pandas에서 동일한 show함수를 호출하는 것입니다.

matplotlib속도를 높이기 위해 전화를 걸지 않으려 고합니까? 그렇다면 pandas이미 다음을 가져 오기 때문에 속도를 높이 지 않는 것입니다 pyplot.

python -mtimeit -s 'import pandas as pd'
100000000 loops, best of 3: 0.0122 usec per loop

python -mtimeit -s 'import pandas as pd; import matplotlib.pyplot as plt'
100000000 loops, best of 3: 0.0125 usec per loop

마지막으로 주석에 링크예제 가 호출이 필요하지 않은 matplotlib이유 iPython notebook는 스크립트가 아닌에서 대화 형으로 실행되기 때문입니다 .


답변

사용 matplotlib,중이고 여전히 iPython 노트북 (또는 Jupyter Lab)에 항목이 표시되지 않는 matplotlib경우 노트북에서 인라인 옵션을 설정해야합니다 .

import matplotlib.pyplot as plt

%matplotlib inline

그러면 다음 코드가 완벽하게 작동합니다.

fig, ax = plt.subplots(figsize=(16,9));
change_per_ins.plot(ax=ax, kind='hist')

인라인 옵션을 설정하지 않으면 표시되지 않으며 plt.show()끝에 추가 하면 중복 출력이 표시됩니다.


답변

난 그냥

import matplotlib.pyplot as plt

%matplotlib inline

라인 추가

plt.show()

df.plot () 옆에 있으며 잘 작동했습니다.


답변

다른 답변에는 matplotlib.pyplot두 번째 함수를 수동으로 가져 오거나 호출 하는 것이 포함 됩니다.

대신, 구성 할 수 matplotlib있는 것으로 대화 형 모드 의와 구성 파일 .

간단히 줄을 추가하십시오.

interactive: True

matplotlibrc다음 위치 중 하나에서 호출 된 파일에

  • 현재 작업 디렉토리에서
  • 에 의해 지정된 플랫폼 특정 사용자 디렉토리에서 matplotlib.get_configdir()
    • 유닉스 계열 시스템에서 일반적으로 /home/username/.config/matplotlib/
    • Windows에서 C:\\Documents and Settings\\username\\.matplotlib\\


답변