蛙の井戸見聞記 Pretty frog in a well who knows nothing of the great web ocean!

~~ 好奇心は猫をも殺す Curiosity Kills the Cat ~~ ♪欲しいモノ・食べたいモノ・ネットで集めた情報と日々の記録の倉庫♪ Logging my life... Since 2003.12  

データの切り出し用スクリプトメモ。

#!/usr/bin/perl
#----基本パラメータ準備
$SHFT=-1;
$FLAGON=0;
$FLAGOFF= -1;
#@ARGV          # 引数の配列
#$#ARGV         # 配列の個数−1
#$ARGV[0]       # 最初の引数
#$ARGV[$#ARGV]  # 最後の引数
#----GNUPLOTでのグラフ作成スクリプトの書き出し準備
open(GPFILE, ">plotgraph.gp") or die " cannot open plotgraph.gp: $!\n";
print GPFILE "set term postscript eps enhanced\n"; #EPSファイルで書き出す
print GPFILE "set size 0.6,0.6\n"; #ちょっと縮小する
print GPFILE "unset key\n"; #レジェンドはいらない
print GPFILE "set lmargin 10\n"; #左側余白
print GPFILE "set bmargin 4\n"; #下側余白
print GPFILE "set rmargin 3\n"; #右側余白
print GPFILE "set tmargin 2\n"; #上側余白
print GPFILE "set pm3d map explicit\n";
print GPFILE "set  palette rgbformulae 22,13,-31\n";
print GPFILE "set xlabel \"X axis\"\n";
print GPFILE "set ylabel \"Y axis\"\n";
#
#----コマンドラインから、ファイルリストを読み込む。
@FLIST = @ARGV;
while($FLIST_TMP = shift @FLIST){
	open(FLISTS_FILE, $FLIST_TMP) or die " cannot open $FLISTS_FILE: $!\n";
	open(OUTPUT_FILE, ">${FLIST_TMP}_result.txt") or die "cannot open outputfile!!!\n";
#----GNUPLOTでのグラフ作成に使うデータファイル名の設定
	$material=$FLIST_TMP;
	print GPFILE "#\nset title \"".$material."\"\n";
	print GPFILE "set output \"".$material.".eps\"\n";
	print GPFILE "splot \"".$FLIST_TMP."_result.txt\" using 1:2:3:4 with pm3d\n";
	print OUTPUT_FILE "#x\ty\tz\tvalue\n";
#----各ファイルの処理の開始
$FLAG=$FLAGOFF;
    while(<FLISTS_FILE>){
		chomp;
		@line=split;
	  	if($FLAG eq $FLAGOFF){
	 		 if($line[1+$SHFT]=~/kokokara/){#--開始行のキーワード
		    $FLAG=$FLAGON;
		  }
	  }else{#FLAG is ON
#----データ読み込みMAIN
		}#end flag
	}#while (<>)
#----データの書き出し。
	close(FLISTS_FILE);
	close(OUTPUT_FILE);
}#while @FLIST
print "------------------------------------------------------------\n";
print "try gnuplot with the file of plotgraph.gp\n";
print " ex.)   > gnuplot plotgraph.gp\n";
print "------------------------------------------------------------\n";

プログラミングPerl〈VOLUME1〉

プログラミングPerl〈VOLUME1〉