MultiPlot2.java
01 /*
02  * $Id: MultiPlot2.java,v 1.12 2008/02/02 03:06:27 koga Exp $
03  *
04  * Copyright (C) 2004 Koga Laboratory. All rights reserved.
05  *
06  */
07 package matxbook.chap12;
08 
09 import java.io.IOException;
10 
11 import org.mklab.nfc.matrix.DoubleMatrix;
12 import org.mklab.nfc.util.Pause;
13 import org.mklab.tool.graph.gnuplot.Canvas;
14 import org.mklab.tool.graph.gnuplot.Gnuplot;
15 
16 
17 /**
18  * 異なる個数の複数のデータのグラフを同時に描画するサンプルです。
19  @author koga
20  @version $Revision: 1.12 $, 2004/05/01
21  */
22 public class MultiPlot2 {
23 
24   /**
25    * メインメソッド
26    
27    @param args コマンドライン引数
28    @throws InterruptedException 強制終了された場合
29    @throws IOException キーボードから入力できない場合
30    */
31   @SuppressWarnings("nls")
32   public static void main(String[] argsthrows InterruptedException, IOException {
33     DoubleMatrix t1 = DoubleMatrix.series(0* Math.PI, 0.05);
34     DoubleMatrix t2 = DoubleMatrix.series(0* Math.PI, 1.0);
35     DoubleMatrix s1 = t1.sinElementWise();
36     DoubleMatrix c1 = t1.cosElementWise();
37     DoubleMatrix c2 = t2.cosElementWise();
38     Gnuplot gnuplot = new Gnuplot();
39     Canvas canvas = gnuplot.createCanvas();
40     canvas.plot(t1, s1, new String[] {"sin(t)"});
41     canvas.setHolding(true);
42     canvas.plot(t1, c1, new String[] {"cos(t) (fine)"});
43     canvas.plot(t2, c2, new String[] {"cos(t) (gross)"});
44     canvas.setHolding(false);
45     Pause.pause();
46     gnuplot.close();
47   }
48 }