1
나는 'matplotlib'을 사용하기 시작했고 2 개의 주요 장애물에 부딪혔다. 나는 docs/examples 등에서이 문제를 해결할 수 없다. 여기는 파이썬 소스이다 :matplotlib 초보자 부부의 의문점
#!/usr/bin/python
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
for i in range(0,301):
print "Plotting",i
# Reading a single column data file
l=plt.plotfile("gen"+str(i))
plt.xlabel('Population')
plt.ylabel('Function Value')
plt.title('Generation'+str(i))
plt.axis([0,500,0,180])
plt.plot()
if len(str(i)) == 1:
plt.savefig("../images/plot00"+str(i)+".png")
if len(str(i)) == 2:
plt.savefig("../images/plot0"+str(i)+".png")
if len(str(i)) == 3:
plt.savefig("../images/plot"+str(i)+".png")
plt.clf()
- 의심 1 : 당신이 볼 수 있듯이을, 나는 기본적으로 플롯을 취소하고 다음 새 플롯마다 시간을 절약. 나는 Y 축의 범위를 일정하게 유지하기를 원하며 "plt.axis ([0,500,0,180])"를 통해이를 수행하려고합니다. 하지만 작동하지 않는 것처럼 보이며 매번 자동으로 설정됩니다.
- 의심 2 : 포인트가 연속 선으로 결합 된 기본 플롯을 얻는 대신 '*'라는 플롯을 얻는 것이 좋습니다. 내가 어떻게 그럴 수 있니?
질문과 관련,하지만 당신은 문자열 형식을 사용하여 IFS를 제거 할 수 없음 :' "../images/plot"+str(i).zfill(3)+".png을 "또는 더 나은 (파이썬 2.6 이상)"../ images/plot {0 : 03d} .png ".format (i)' –
덕분에 톤 팀 :) –
... 또는"% 03d "% i ... – EOL