#navi(ソフトウェア演習I/11)
*WebClass [#cca07518]
-https://webclass.cc.u-ryukyu.ac.jp/

-次週休講(慰霊の日)
*gnuplot [#ded6be71]
**準備 [#gc84877a]
-EasyPackageより, math/gnuplot と,graphics/aquaterm をインストールすること.
--aquatermをデフォルトのgnuplot出力ウィンドウするために,".tcshrc"に
 setenv GNUTERM aqua
を追加しておくといいです.
---注
ほかに
 set terminal x11
 set terminal dumb
 set terminal png
 set output "out.png"
などがあります.
-もし,gnuplotでエラーの場合,
 sudo ln -s libreadline.6.2.dylib libreadline.6.0.dylib
**gnuplotとは [#m609853c]
-gnuplotとは,対話的に2次元,もしくは3次元のグラフを描くアプリケーションです. グラフは,関数(x2やsin(x)など)の他に,実験データーなどの離散的な数値も 描くことができます.  
-また,CやBASIC,fortranなどの言語で使用できる式をそのまま入力でき,三角関数から ベッセル関数まで沢山の関数が用意されおり,さらに自分で関数の定義もできます. 
**gnuplotの起動と終了 [#g5ea45d2]
コマンドプロンプトが出ている状態で,
 % gnuplot
と入力するとgnuplotが起動します.
メッセージが表示された後プロンプトが 
 gnuplot>
に変わります. 
 gnuplot> help
とすることでヘルプを表示することができます.  
gnuplotを終了するには, 
 gnuplot> quit
 gnuplot> exit
のように,quitやexitと入力することで終了できます.
**グラフの描画 [#t23ba662]
書式:
  plot {範囲} {<関数> | 
              {"<データファイル>" {using ...}}}
              {表題}{スタイル}
              {,<関数> {表題} {スタイル}...}
例
 gnuplot> plot x
 gnuplot> plot sin(x)
 gnuplot> plot x*x
や 
 gnuplot> plot "pulse.dat"
と,入力することで描画できます.  
~ここで,データファイルは,次のようにx,yの順で記録しておくか, 
 1  0.4988939
 2  0.4830083
 3  0.4121865
 4  0.3372366

連続したデータの場合は,最初のxの値を省略して, 
 0.4988939
 0.4830083
 0.4121865
 0.3372366
と記録しておく必要があります.  

ただし,デフォルトではデータを点で表示しますが,オプション指定することに     より,点と点とを繋いで折れ線グラフとして描画することができます. 
 gnuplot> plot "pulse.dat" with line

その他にも,linespoint,dots,boxesなど指定できます.  

またグラフの表示範囲を変更するには,plotの最初の引数で与えます. 
 gnuplot> plot [0:256]"pulse.dat" with line

-こうすると、xを0から256まで変化させた時のpulse.datのグラフが    描かれます.y軸の範囲を定めるには,x軸上の範囲の次に続けて書きます. 
  gnuplot> plot [0:256][-0.8:0.8]"pulse.dat" with line
また,対数グラフにしたいときは, 
 gnuplot> set logscale 軸名

x軸とy軸を両方対数スケールにする場合は, 
 gnuplot> set logscale xy

とします.
*課題2 [#w84668e2]
-次のスクリプトをplot.shという名前で保存しなさい.
-numは,自分のアカウント名とすること.
-このスクリプトを実行すると,gnuplotより,数式グラフ画像が保存される.
#code(bash){{
#!/bin/sh
num=e1057XX
echo "set terminal png" > $num.gplot
echo "set output \"$num.png\"" >> $num.gplot
echo "set xrange [-2:2]" >> $num.gplot
echo "set yrange [-2:2]" >> $num.gplot
echo "set isosample 40,40" >> $num.gplot
echo "splot x*x*exp(-x*x)*y*y*exp(-y*y)" >> $num.gplot
gnuplot < $num.gplot
}}
+上記スクリプトを引用し,各行説明しなさい.
+別なグラフを出力するよう上記スクリプトを改変しなさい.人と違ったグラフ(数式)を使うこと. (新スクリプトは,レポート内に書くこと.添付してはいけない.)

-レポートはPDF形式とし,ファイル名を"アカウント名_2.pdf"としてWebClassの課題2にアップロードしなさい.
-ファイル名(例): e115701_2.pdf)
-締め切り:6月30日正午
*すばらしいの解説ページ [#j6b545ef]
-[[MacWiki gnuplot:http://macwiki.sourceforge.jp/wiki/index.php/gnuplot]]
//-[[GNUPLOT解説:http://www.ie.u-ryukyu.ac.jp/~j99061/work/software1/gnuplot/index.html]]
-[[グラフは Gnuplot にお任せ:http://ayapin.film.s.dendai.ac.jp/~matuda/Gnuplot/gnuplot.html]]
-[[gnuplot のページ (Takeno Lab):http://takeno.iee.niit.ac.jp/%7Efoo/gp-jman/gp-jman.html]]
-[[GNUPLOTの第一歩(小栗栖さん@金沢大):http://lagendra.s.kanazawa-u.ac.jp/ogurisu/manuals/index-gnuplot.html]]
-[[Gnuplot not FAQ:http://t16web.lanl.gov/Kawano/gnuplot/index.html]]
-[[GNUPLOT るさんちまん(大城さん@琉大):http://mibai.tec.u-ryukyu.ac.jp/~oshiro/Doc/gnuplot_primer/]]


//-[[Dsuke:http://www.ie.u-ryukyu.ac.jp/~j99061/]]
//--[[X Applications on Mac OS X:http://www.ie.u-ryukyu.ac.jp/~j99061/work/software1/index.html]]
//--[[gnuplot:http://www.ie.u-ryukyu.ac.jp/~j99061/work/software1/gnuplot/index.html]]
//--[[Tgif:http://www.ie.u-ryukyu.ac.jp/~j99061/work/software1/tgif/index.html]]

#navi(ソフトウェア演習I/11)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS