파이썬 : matplotlib.animation



==========================================================
import matplotlib.animation as animation

def animate(i)
    graph_data = open('example.txt', 'r').read() # 열어서 읽는것
    lines = graph_data.split('\n')              #2  띄어쓰기를 할때마다 문자열을 나눔
    xs =[]
    ys =[]
   for line in lines:                                 #3
       if len(line) >1:                               #문장이 끝날때까지를 의미하는듯
         x, y = line.split (',')                        #컴마표시마다 나눈다는 의미인듯
         xs.append(float(x))                #새로운 내용을 추가한다는의미인듯
         ys.append(float(y))


#2
In Python though, lists can be of any size, so reading the content of a file into a list can be either done as:
lines = open('filename').read().split('\n')
or
lines = open('filename').readlines()
.split()은 무언가를 나누는 건데... 띄어쓰기할때마다 나눈다는 의미인듯 싶다..




#3  :for문과 if 문 쓰임
3. for문의 응용
for문의 쓰임새를 알기 위해 다음을 가정해 보자.
"총 5명의 학생이 시험을 보았는데 시험 점수가 60점이 넘으면 합격이고 그렇지 않으면 불합격이다. 합격인지 불합격인지 결과를 보여주시오."
우선 학생 5명의 시험 점수를 리스트로 표현해 보았다.
marks = [90, 25, 67, 45, 80]
1번 학생은 90점이고 5번 학생은 80점이다.
이런 점수를 차례로 검사해서 합격했는지 불합격했는지 통보해 주는 프로그램을 만들어 보자. 역시 에디터로 작성한다.
# marks1.py
marks = [90, 25, 67, 45, 80]

number = 0 
for mark in marks: 
    number = number +1 
    if mark >= 60: 
        print("%d번 학생은 합격입니다." % number)
    else: 
        print("%d번 학생은 불합격입니다." % number)
각각의 학생에게 번호를 붙여 주기 위해 number라는 변수를 이용하였다. 점수 리스트인 marks에서 차례로 점수를 꺼내어 mark라는 변수에 대입하고 for문 안의 문장들을 수행하게 된다. 우선 for문이 한 번씩 수행될 때마다 number는 1씩 증가한다.
이 프로그램을 실행하면 mark가 60 이상일 때 합격 메시지를 출력하고 60을 넘지 않을 때 불합격 메시지를 출력한다.
C:\doit>python marks1.py
1번 학생은 합격입니다.
2번 학생은 불합격입니다.
3번 학생은 합격입니다.
4번 학생은 불합격입니다.
5번 학생은 합격입니다



=================================================================

import matplotlib.pyplot as plt #자료를 차트나 플롯으로 시각화하는 패키지import matplotlib.animation as animation from matplotlib import style style.use('fivethirtyeight') #figure와 subplots에 관한 내용 : 바탕을 의미하는듯fig = plt.figure() ax1 = fig.add_subplot(1,1,1) #1 def animate(i) : graph_data = open('example.txt','r').read() lines = graph_data.split('\n') #아마 띄어쓰기마다.. xs = [] ys = [] for line in lines: if len(line) > 1: x, y = line.split(',') xs.append(float(x)) ys.append(float(y)) ax1.clear() # 내용들이 추가 되니까...이미 나온 내용들을 제거한다.. ax1.plot(xs, ys)


ani = animation.FuncAnimation(fig, animate, interval=1000) #2

plt.show()



#1 

전체 표의 모양 비율,, 이라고 해야할까,,, 직사각형으로할지 조그마한 정사각형으로 할지라고 해야하나...

#2

위에 있는 모든 것을 총집합해서 만드는 것이다... animation은 import한것이고, funcanimation은애니메하도록 

허락하는 메소드함수,fig는 할곳 어디 장소,animate는 위의함수,interval1000은 업데이트되는것 








+ Recent posts