블로그 이미지

우주적 물리학도 레이의 연구실

우주적 물리학도가 되고 싶은 레이의 물리블로그입니다. 물리이야기도 쉽게 소통할 수 있다는 믿음의 끈을 꼭 쥐고 있습니다. by cosmic-ray


gnuplot 왕초보 팁

제가 기초 소양이 많이 부족하여 박사 2학기인 이때까지 gnuplot을 써본 적이 없네요. 리눅스와 별로 친하지 않아서 말이죠. 리눅스와 친해져야 한다는 것은 대학원 입학하자마자부터 알고는 있었지만 이 막연한 공포로 인하여 미루고 미룬 일들이 이제는 더 이상 미룰 수가 없게 되어 아주 발등에 불이 붙습니다. ㅠㅠ

이로 인해 얻는 교훈은 미리미리 준비하라. orz

gnuplot은

Gnuplot is a portable command-line driven interactive data and function plotting utility for UNIX, IBM OS/2, MS Windows, DOS, Macintosh, VMS, Atari and many other platforms. 


하답니다. gnuplot 홈페이지에 가면 이렇게 친절하게 설명이 되어 있습니다. 저도 처음 쓰는거라 사실 잘 몰라요. 여기서 주목할 것은 저기 굵은 글씨 'portable'에 있습니다. 사전을 찾아보면, 우리가 흔히 알고 있는 '휴대용의' 라는 의미 말고 '(프로그램이 다른 기종에) 이식 가능한' 이라는 뜻이 있습니다. (네이버사전 참조)

정말 그런가 봅니다. 유닉스, 윈도우즈 다양한 플랫폼에서 쓸 수 있다고 되어 있네요. (아 전 부끄럽게도 컴퓨터를 잘 몰라서;;) 주용도는 데이터를 가지고 이것저것할 수 있는 것이라고 합니다. 사용하기 쉽고 무료라는 장점이 있다고 하더라고요.

저도 이번에 써보니 익숙해지기만 하면 쉽고 좋을 것 같습니다. 익숙해지기까지가 문제죠. ㅎㅎ

이미 좋은 메뉴얼들이 많지만 내용이 너무 방대하면 오히려 알아먹기가 힘들 때가 있더라고요. 그래서 이번에 제가 배운 생기초 중의 기초 몇 가지를 공유하려 합니다. 스스로도 잊어버리지 않기 위한 노트에요. :)


1. 사인함수 plot하기


사인함수를 한번 그려봤습니다. 그림 사이즈에 문제가 있어 약간 깨지는데요. 클릭하시면 제대로 보실 수 있어요. 너무 쉽죠. plot이라는 명령어면 그려줍니다. 선으로 그려졌는데 이걸 원하는대로 바꿀 수가 있어요.


w를 쓰고 그 뒤에 표현하고 싶은 것을 적어넣습니다. 그림에서는 points와 step이 바뀌어 있네요. 앗 이런 실수;;


2. 데이터 plot하기

제가 가지고 있는 데이터가 있습니다. 3열짜리 데이터에요. 무엇을 x축, y축으로 하여 그릴지 정할 수 있습니다. 저는 x2라는 파일 속 데이터의 첫번째와 세번째 데이터를 가지고 plot을 해보고 싶었어요.

plot '파일이름' u x축데이터:y축데이터
형식으로 넣어주면 됩니다. 이 경우도 뒤에 w step 이런 식으로 그래프 모양을 바꿀 수 있습니다.

3. 그래프 축이름 넣기

x축 y축이 무엇을 의미하는지 표시를 해주지 않는다면 전혀 소용없는 그림밖에 되지 않겠지요. 축 이름과 표시한 점이 무슨 뜻인지를 적어줄 수 있습니다.


set이라는 명령어로 이것저것 할 수 있는 것 같더라고요. set xrange [n1:n2], set yrange [n1:n2] 형식으로 어디서부터 어디까지 표시할 것인지 지정해 줄 수 있습니다. replot은 좀 전에 했던 plot을 다시 하라는 명령어고요.


4. 그래프 저장하기

그래프를 임의의 확장자로 저장하는 방법을 보겠습니다. png 파일로 저장을 해볼게요. 먼저 set terminal 확장자 ,로 정의(?)를 해주고요 그 다음 set output '파일명.확장자'로 파일을 생성합니다. 그럼 빈 파일이 하나 생기는 것 같아요. 그리고 plot을 실행시키면 그 그래프가 방금 지정해준 파일로 저장이 됩니다.


사실 이런 방법이 귀찮으면 프린트스크린으로 화면 전체를 캡쳐해서 그림판 같은 데서 작업을 하면 되지만 그렇게 되면 그림의 사이즈를 조정할 때 text들이 작아져서 안 보이는 경우가 있더라고요. 조금 귀찮지만 위 방법대로 하면 아래 그림과 같이 깔끔하게 그래프가 저장됩니다.



5. 추가팁

이 글을 쓰려고 이래저래 장난을 치다보니 몇 가지 단축기능을 찾을 수 있었습니다. plot 창에서 누르면 바로 실행되는 몇 가지 입니다.

r (ruler) : 마우스를 댄 상태로 r을 누르면 그 지점이 기준점이 되고 그 이후 마우스를 움직이면 거기서 부터의 좌표 위치 등이 또 표시됩니다.

g (grid) : set grid 라는 명령어가 있는데 그렇게 하지 않고 g만 눌러도 표시가 됩니다.

l (logscale) : 제가 눌렀을 때는 y축이 로그스케일로 바뀝니다.

L (logscale)  : 마우스 가까이 있는 축이 로그스케일로 바뀝니다.

m : m을 누르면 plot 창 하단에 좌표 정보 등을 볼 수 있는 바를 보일 수도 없앨 수도 있습니다.

q : plot 창을 바로 닫을 수 있습니다.

h (help) : 바보 같이;; 헬프가 있네요. 모든 단축기에 대한 설명이 있어요. 하핫;; 이것 참고하시면 되겠습니다. :)



사실 정말 빙산의 일각만 소개를 한 것인데요. 인터넷의 세상에 많은 좋은 메뉴얼들이 있습니다. 제가 본 몇 가지를 소개하면

* gnuplot homepage
*
gnuplot tutorial - Duke Univ.
* gnuplot simple manual

등이 있습니다.

그럼 저같은 초짜에게 도움이 될 수 있길 바라며...



'나, 물리하는 여자야' 카테고리의 다른 글

1학기 수업 시간표  (2) 2009.03.02
gnuplot 왕초보 팁  (2) 2009.02.18
UHECR의 물리 - extensive air shower  (1) 2009.02.01
UHECR을 찾아서  (1) 2009.01.26
Comment 2 Trackback 0
  1. TYKim 2009.02.21 20:12 address edit & delete reply

    이바이바 겸손이 너무 지나쳐~ mathematica나 다른걸 쓸줄 알잖아 버럭 ~ ㅋㅋㅋ 나도 gnuplot은 안써봤어. origin, mathematica, root 정도? 근데 쉽긴 쉽구나 -ㅂ-b 담번엔 미방 프로그램도 부탁한다굿~ ㅋㅋ 걍 윈도에서 linux 용 플그램 쓸쑤 있게 해주는 cygwin 도 괜찮을듯 엄청 큰 플그램 돌리는거 아니라면

    • cosmic-ray 2009.02.25 21:50 신고 address edit & delete

      ㅎㅎ 겸손이 아닌디... 난 리눅스 쓴지가 얼마 안되서;; 그리고 외부에서 리눅스컴 접속할 때는 xmanager 써. 시그윈이랑 비슷하지 않나? 잘 모르겠다. ㅎㅎ

      난 요며칠 계속 삽질하다보니 진이 다 빠진다. ㅠㅠ

Top

prev 1 ··· 25 26 27 28 29 30 31 32 33 ··· 67 next