Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

데이터의 플롯

4. 데이터의 플롯

4.1. 데이터의 종류

실험 등으로 얻은 데이터를 gnuplot에서 그래프로 나태내기 위해서는 적절한 데이터 파일을 만들어주어야 한다.

#text1.txt
#x              y
0.0123          5.21
0.168           6.02
0.184           6.08
0.190           6.51
0.226           6.75
0.259           6.81
0.304           7.15
다음과 같은 2차원 그래프를 플롯해보자. 여기서 '#' 뒷부분은 주석으로 처리된다. 일반적으로 플롯을 위한 데이터 파일은 ASCII 텍스트 파일이어야 함을 명심하자.

4.2. 데이터의 플롯

위에서 보았던 text1.txt 파일을 플롯하는 경우를 예로 들어보도록 한다. gnuplot 프롬프트 상에서

gnuplot> plot "text1.txt"
라고 입력하면

그림 4. y=sin(x),cos(x)

와 같은 그래프를 얻을 수 있다. gnuplot에서 플롯하고 싶은 데이터가 다른 곳에 위치해 있을 경우 프롬프트 상에서 그 파일의 경로를 다음과 같이 직접 지정해 주면 된다.
gnuplot> plot "/home/kaien/data/text1.txt"
또 한 gnuplot은 기본적으로 UNIX tool이므로 'cd' 등의 shell 명령을 모두 사용할 수 있으며 history 기능도 동작하므로 한번 입력했던 그래프를 다시 그리기 위해 똑같은 명령을 다시 입력하지 않고 위,아래 화살표키를 이용하여 조금 전에 입력했던 명령들을 다시 호출할 수 있다.

4.3. 그래프의 형태

그림 5에서 나타난 그래프는 단순한 점으로 나타내어진다. 이 데이터를 하나의 이어진 선으로 표시하고 싶을 경우에는

gnuplot> plot "text1.txt" with l(ine)

그림 5. 선으로 데이터를 연결

으로 표시하면 된다. 여기서 'line'이라고 일일이 입력하지 않고 'l'만 입력하여도 같은 결과를 얻을 수 있다. 또, 데이터의 점들을 표시하고 각각의 선으로 잇는 경우에는
gnuplot> plot "text1.txt" with linespoints
라고 입력한다.

그림 6. 선과 점으로 데이터를 연결

4.4. 여러 개의 변수가 있을 경우

아래와 같은 경우를 생각해 보자.

#text2.txt
#t      x        y        v       E
0.11    0.11    99.94   1       -1.078
0.12    0.12    99.92   1       -1.176
0.13    0.13    99.91   1       -1.274
0.14    0.14    99.90   1       -1.372  
0.15    0.15    99.88   1       -1.470
0.16    0.16    99.87   1       -1.568
0.17    0.17    99.85   1       -1.666
0.18    0.18    99.84   1       -1.764
0.19    0.19    99.82   1       -1.862

여기서 단순히

gnuplot> plot "text2.txt"
라고 할 경우, 첫 번째와 두 번째의 데이터를 2차원으로 플롯하게 된다. 만일 두 번째, 세 번째 데이터를 플롯하고 싶다면 다음과 같이 입력한다.
gnuplot> plot "text2.txt" u(sing) 2:3

이와 같이 여러개의 변수로부터 플롯하고자 하는 값을 선택하는 경우에는 'using' 혹은 'u' 뒤에 사용하고 싶은 변수의 열을 ':'을 이용해 지정해 주어야 한다.