최근 Python에서 Pandas를 사용하는 기초스러운 이야기를 했는데요... 이번에도 계속 뭐 .. 언제나 그렇듯 기초지요^^ 사용환경은 IPython notebook으로 하구요^^
- Python Pandas
- 기초스러운 Series 사용법
- Python Pandas
- 기초스러운 DataFrame 사용법
- Python Pandas
- Python pandas를 이용한 저장된 파일에서 읽은 데이터를 쉽게 사용하기
- Python Pandas
- Python Pandas를 이용해 분석한 데이터를 그래프로 표현하기...
- Python Pandas
- Pandas pivot_table과 groupby, cut 사용하기
import pandas as pd import numpy as np import matplotlib.pyplot as plt from pandas import DataFrame %matplotlib inline sampleTime = 0.0001 ScaleFactor = -1365.333333333 rawData = pd.read_table('testRawData.txt') rawData = rawData.drop(rawData.columns[-1], axis = 1) rawData.rename(columns = {'Index' : 'time'}, inplace = True) rawData.rename(columns = {'rawDes' : 'Desired'}, inplace = True) rawData.rename(columns = {'rawAct' : 'Actual'}, inplace = True) rawData.time = rawData.time*sampleTime rawData.Desired, rawData.Actual = rawData.Desired /ScaleFactor, rawData.Actual /ScaleFactor
일단 위 코드는 어떤 rawData를 읽어오는 겁니다. 뭐... DataFrame으로 선언된 데이터의 특정 컬럼(column)을 삭제(drop)하는 거라든지.. column의 이름을 변경(rename)한다든지 하는 명령을 사용했지만... 그냥 데이터를 읽는거죠^^ 이제 다음 코드를 보죠~~~^
plt.figure(figsize=(15,5)) plt.plot(rawData.time, rawData.Desired, rawData.time, rawData.Actual, 'r') plt.title('Bad Desired comm5d in Finger', size=15) plt.legend(['Desired', 'Actual']) plt.xlabel('time (s)', size=15) plt.ylabel('degree', size=15) plt.axis([1.5, 3, -2, 25]) plt.grid(True) plt.annotate('Bad Desired', xy=(1.88, 15), xytext=(2.3, 16), size=15, arrowprops=dict(facecolor='black', shrink=0.04))
이걸 이제 보도록 하겠습니다.^^
plt.figure(figsize=(15,5))
이건 inline으로 ipython notebook 화면에 포함시켜서 보여줄 그림의 크기를 정해주는 것입니다. MATLAB의 figure와 같아서 제일 먼저 나와야할 명령입니다.
plt.plot(rawData.time, rawData.Desired, rawData.time, rawData.Actual, 'r')
이건 그림을 그릴 데이터를 정해 준 것입니다. 처음 것은 파란색~~, 두번째는 'r' 옵션으로 빨간색으로 그리는거죠.
plt.title('Bad Desired comm5d in Finger', size=15)
ㅎ.. 이것은 그림의 타이틀을 잡아 주는 것입니다.
plt.legend(['Desired', 'Actual'])
이것은 범례(legend)를 정해주는 거죠....
plt.xlabel('time (s)', size=15) plt.ylabel('degree', size=15)
x축과 y축의 라벨을 잡아 주는 것입니다.
plt.axis([1.5, 3, -2, 25])
그리고.. 전체를 다 보일 필요가 없을때... 특정 범위를 보여주고 싶을때... 이렇게 해서 범위를 잡아 주면 됩니다.^^
plt.grid(True)
그리고 grid를 켜(True) 주는 거구요^^
plt.annotate('Bad Desired', xy=(1.88, 15), xytext=(2.3, 16), size=15, arrowprops=dict(facecolor='black', shrink=0.04))
이건 annotate라고 해서 그래프 중간에 글자를 찍습니다. 화살표까지 같이 찍어주죠~~~ 이렇게 만들어진 그래프를 보시죠.
어떤가요... 괜찮죠???^^ 어디 보고서에 넣을때 괜찮겠죠~~~~^^
반응형
'Software > Python' 카테고리의 다른 글
Python에서 벡터 그리기 drawRobotics Ver0.01 (8) | 2015.12.17 |
---|---|
Python에서 좌표계와 벡터 그리기 (18) | 2015.12.09 |
Python을 이용한 위치에서 속도를 구하는 여러가지 방법에 대한 예제 (7) | 2015.08.26 |
Python - IPython에서 구현하는 저역통과필터 Low Pass Filter (14) | 2015.05.15 |
Python pandas를 이용한 저장된 파일에서 읽은 데이터를 쉽게 사용하기 (26) | 2015.05.06 |
Python Pandas 기초 - 기초스러운 DataFrame 사용법 (14) | 2015.04.29 |
Python Pandas 기초 - 기초스러운 Series 사용법 (12) | 2015.04.22 |