Mathematical Illustrations by 바죠

[ Bill Casselman's home page]
http://www.math.ubc.ca/~cass/graphics/text/www/index.html
http://www.math.ubc.ca/~cass/msri-summer-school/postscript.html


환상적인 수학 그림그리기, mathematical illustrations

수학 교과서 따위에 나오는 그림처럼 그림을 그리고 싶다면 포스트스크립트를 공부해 보는것도 좋을것이다.

대부분의 도식적인 그림들은 ppt나 그림판 수준에서 가능하다고 본다. 훨씬 더 이쁘게 할 수 있는 여지도 분명히 존재한다. 노력한만큼 이쁜 그림을 얻을 수 있다고 본다. xfig 또한, 훌륭하다. 개인적으로 여러 가지 그림들을 엮어서 하나의 그림으로 만들 때 자주 사용한다. 다양한 경로로 만들어진 그림들을 엮어서 하나의  종합적 특성을 가지는 그림생성에 유리한 소프트웨어이다. 그런데, 높은 분해능을 요구하면서 정밀한 계산 결과를 그림으로 표현할 때에는 한계가 있다. 이럴 경우, 우리는 컴퓨터 프로그래밍 언어인 포스트스크립트를 활용하여 그림을 만들 수 있다.

논문에서 보는 그림들 중에서 그래프같은 것들은 상당히 많은 종류의 소프트웨어 중에서 하나를 선택하여 사용하면 아주 높은 수준의 그림을 그리고 논문에 낼 수 있을것이다. 소위 퍼브리케이션 퀄러티를 얻을 수 있을 것이다. 아무 문제가 없어 보인다. 그런데, 좀 도식적인 그림을 그리고 싶다면 '통상의 그림 그리는 소프트웨어'(matlab, xfig, ppt, 그림판, xmgrace, gnuplot, origin, matplotlib)로 마무리가 가능하다. 진짜 문제는 수학적으로 정밀해야만 하는 데이터를 도식적으로 그릴 때, 좀 난감해지는 경우들이 많이 있다. 이 경우, 수학적 일러스트레이션 기법을 동원해야 할 것이다. 개인적으로 이전까지는 xfig라는 프로그램을 활용하여 포스트 스크립트 자료를 합치고 첨가 수정했었다.

위에 소개된 책은
PostScript(하나의 컴퓨터 언어)를 활용한 수학적 그림그리기에 대해서 자세히 논하고 있는 책이다. 개인적으로 사용할 경우 pdf로 나누어진 책 내용을 다운로드해서 읽어 볼 수 있게 되어있다. 다양한 연습문제와 실제 라이버러리 형식의 소스코드등이 제공된다. 자세한 알고리듬들을 PostScript 언어로 모두 구현할 필요는 없을 것이다. 익숙한 언어로 대부부의 수치적 계산을 하고 출력만 PostScript 언어로 해 버리면 원하는 출력물을 얻을 수 있을것으로 생각된다.

사실은 학생 시절, 훌륭한 후배가 포트란과 포스트스크립트(포스트스크립트 책이 2권 정도 있기는 하다.)를 연결해서 그림 그리는 일반화된 프로그램을 만들어 보인적이 있었다. 물론, 나는 그 프로그램을 열심히 사용하였고 여러 논문 작성에서도 유용하게 사용한 적이 있다. 지금 생각해 보면, 나름 좀 차별화된 그림들을 당시로서는 제공하였었다고 생각한다. 그리고, xmgrace, gnuplot, matplotlib 등을 사용했었고, 동영상제작은 유로 소프트웨어인 gif movie gear (http://incredible.egloos.com/1568297)라는 소프트웨어를 사용하여 발표시간들에 대응했었다. 

만들어진 ps 파일들을 이용하고, 물론, 프로그램을 사용하여 데이터를 포스트스크립트 언어로된 출력물을 만든다면, 동영상도 만들 수 있다. 아래와 같은 식으로 linux 명령어 convert(http://www.imagemagick.org/script/index.php)를 활용하면 애니메이션 그림들도 만들어 볼 수 있을것이다. 발표할 때 사용할 수 있을것이다. 계산 결과의 흐름, 실제 기작들, 실제 계산 절차 등을 애니메이션으로 발표하면 상당한 설득력을 쉽게 확보할 수 있다.
convert -delay 20 files*.ps animation.gif

포스트스크립트 언어 자체에 관심이 있다는 아래의 책으로 공부해야 할 것이다. 개인적으로 이전에 하기는 했었는데, 실제 응용을 통한 재미는 보지 못했었다.  아래에 있는 두 권 정도의 책이면 거의 완벽에 가까운 포스트스크립트 레퍼런스가 될 수 있을것이다.
이전에 제본까지 했었었는데.
BLUEBOOK.pdf
GREENBK.pdf

Postscript Tutorial:
http://local.wasp.uwa.edu.au/~pbourke/dataformats/postscript/
http://www.tailrecursive.org/postscript/postscript.html
http://www.anastigmatix.net/postscript/direct.html

그림 출처:
http://www.math.ubc.ca/~cass/piscript/docs/piscript.html

.eps

.eps






















.eps

.eps

.eps
 









.eps

.eps

.eps

.eps

.eps

.eps

.eps

.eps

.eps

.eps

.eps

.eps
The following are multi-page displays:

.eps

.eps

.eps

.eps

.eps




출처:
http://physics.bu.edu/~py502/postscript/binomial.html
-------------------------------------------------------------------------------------------
Installing and updating PiScript
http://www.math.ubc.ca/~cass/piscript/docs/install.html

PyScript
http://pyscript.sourceforge.net/

PyX - Python graphics package
http://pyx.sourceforge.net/

http://www.pugo.org/main/project_pyps/

Python PS helps generating PostScript from your Python-programs.



-------------------------------------------------------------------------------------------
참고: matplotlib, Python
http://incredible.egloos.com/2985527
참고: xmgrace (grace)
http://incredible.egloos.com/2657517


-------------------------------------------------------------------------------------------

PostScript 언어의 장점들:
무료 viewer가 제공된다.
거의 모든 종류의 컴퓨터에서 작업을 할 수 있다.
사실상 최종단계의 출력물을 만들 때 완전한 조절을 허용한다.
고분해능 자료를 생성할 수 있다.

단점들:
직접적인 계산이 단순하지 못하다.
언어로서 많은 구조를 가지고 있지 못하다.
디버깅 과정이 난해해질 수 있다. 

(다른 언어와 연합해서 PostScript 출력물을 찍어내면 효율적으로 PostScript의 장점들을 취할 수 있다.)



핑백

덧글

댓글 입력 영역

최근 포토로그