시냅틱 패키지 시스템을 사용하여 Ubuntu 9.10에 matplotlib를 설치했습니다. 그러나 다음과 같은 간단한 예제를 시도하면
>>> from pylab import plot;
>>> plot([1,2,3],[1,2,3])
[<matplotlib.lines.Line2D object at 0x9aa78ec>]
플롯 창이 나타나지 않습니다. 플롯 창을 표시하는 방법에 대한 아이디어가 있습니까?
답변
입력 할 수 있습니다.
import pylab
pylab.show()
또는 더 나은 경우 ipython -pylab
.
의 사용은 pylab
더 이상 권장되지 않으므로 오늘날 해결책은 다음과 같습니다.
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.show()
답변
pylab.show()
작동하지만 차단됩니다 (창을 닫아야합니다).
훨씬 더 편리한 해결책은 pylab.ion()
시작할 때 수행하는 것입니다 (대화 형 모드 켜기). 모든 (pylab과 동등한 pyplot.*
명령 ) 명령은 플롯을 즉시 표시합니다. 대화 형 모드에 대한 자세한 내용 은 공식 웹 사이트에서 찾을 수 있습니다.
또한 두 번째로 더 편리한 ipython -pylab
( --pylab
, 최신 버전)을 사용하여 from … import …
부분 을 건너 뛸 수 있습니다 ( %pylab
최신 IPython 버전에서도 작동 함).
답변
이 시도:
import matplotlib
matplotlib.use('TkAgg')
pylab을 가져 오기 전에
답변
아래 코드 조각은 Eclipse와 Python 셸 모두에서 작동합니다.
import numpy as np
import matplotlib.pyplot as plt
# Come up with x and y
x = np.arange(0, 5, 0.1)
y = np.sin(x)
# Just print x and y for fun
print x
print y
# Plot the x and y and you are supposed to see a sine curve
plt.plot(x, y)
# Without the line below, the figure won't show
plt.show()
답변
오류가 표시됩니까? 이것은 백엔드를 설정하지 않은 문제 일 수 있습니다. Python 인터프리터 또는 .matplotlib/matplotlibrc
홈 디렉토리 의 구성 파일 ( )에서 설정할 수 있습니다 .
코드에서 백엔드를 설정하려면
import matplotlib
matplotlib.use('Agg')
여기서 ‘Agg’는 백엔드의 이름입니다. 존재하는 백엔드는 설치 및 OS에 따라 다릅니다.
http://matplotlib.sourceforge.net/faq/installing_faq.html#backends
답변
최신 IPython은 --matplotlib
선택적 백엔드 매개 변수와 함께 ” “인수를 사용합니다 . 기본값은 “auto”이며 일반적으로 Mac 및 Windows에서 충분합니다. Ubuntu 또는 다른 Linux 배포판에서 테스트하지 않았지만 작동 할 것으로 예상합니다.
ipython --matplotlib
답변
pylab.show()
IPython 창 을 고정 하는 문제가 발생하는 경우 (Mac OS X에만 해당 될 수 있으며 확실하지 않음) IPython 창에서 cmd-c를 실행하고 플롯 창으로 전환하면 문제가 발생합니다.
분명히 향후 호출 pylab.show()
은 IPython 창을 고정하지 않고 첫 번째 호출 만 고정합니다. 불행히도, matplotlib를 다시 설치할 때마다 플롯 창의 동작 / show ()와의 상호 작용이 변경되므로이 솔루션이 항상 유지되는 것은 아닙니다.