다양한 가시화 툴로 수치 데이터 가시화 하기 – gnuplot, octave, matlab
다양한 가시화 툴로 수치 데이터 가시화 하기
작성자 : 서진우 (alang@clunix.com)
작성일 : 2010-09-09
CAE 해석 SW를 통해 생성되는 데이터를 검증하기 위해 해당 수치 데이터를 가시화해야 할 경우
가 종종 발생한다. 이때 간단한 방법으로 이를 구현할때 사용하는 방법들이다.
현재 진행 중인 컨설팅 프로젝트에 유용히 사용한 팁이다.
기술부의 모기 이민호선생에게 감사드린다..ㅋㅋ
x,y 형태의 수치 데이터를 가시화 하는 방법에 대해 알아보도록 하자
0.1011402561E-04 0.000000E+00
0.2079862346E-04 0.000000E+00
0.3157805672E-04 0.000000E+00
.
.
위와 같은 형태의 데이터가 저장된 test.txt 이 있다.
이 파일의 수치를 가시화로 나타내 보자
– octave 를 이용한 방법
# octave
> A=load test.txt
> plot (A(:,1),A(:,2))
테스트를 위해서 가상 값을 만들고자 할때는 rand 함수를 사용하면 간편하다.
> A=rand (2,10) ;; 두개 컬럼으로 이루어진 10행의 데이터 생성
> plot (A(:,1),A(:,2))
– matlab 을 이용한 방법
# matlab
> A=textread (“text.txt”)
> plot (A(:,1),A(:,2))
– gnuplot 을 이용한 방법
# gnuplot
> plot “test.txt”
변수가 여러개인 파일을 경우, 특정 변수의 값만을 적용하여 plot 하고자 할 경우 ..
> plot “run.frc” u(sing) 1:2
즉 첫번째 열과 두번째 열만을 반영하여 plot 한다.
각 값이 표시된 점을 line 으로 연결할 때는
> plot “test.txt” with l(ine)
– gnuplot 으로 script 파일 만들기
vi test.plot
——————————————–
set term png
set output “run.png”
set xlabel “TIME”
set ylabel “FX”
set zeroaxis
plot “run.frc” u 1:2 with l
——————————————–
# gnuplot test.plot
– 응용 scrpit 만들기
# vi run_graph.sh
——————————————–
#!/bin/sh
cat <<make_scripts > run.plot
set title “FX value of the Graph”
set term png
set output “run.png”
set xlabel “TIME”
set ylabel “FX Value”
set zeroaxis
plot “run.frc” u 1:2 with l
make_scripts
gnuplot run.plot
gthumb run.png
——————————————–
chmod 755 run_graph.exe
이제 run.frc 파일이 있는 위치에서 run_graph.sh 명령을 수행하면 자동으로
결과 그래프가 gthumb 로 보여질 것이다.
만일 원격 시스템에서 수행한다면 반드시 ssh X-forward 상태로 접속이 되어
있어야 한다.
아래는 ABAQUS vmat user sub routine에서 생성하는 결과 파일을 run_graph.exe으로 실행하여
그래프로 추출한 화면이다.