diff --git a/src/main/java/info/istlab/Zemi01/NumericDemo.java b/src/main/java/info/istlab/Zemi01/NumericDemo.java index 21109a5..6461861 100644 --- a/src/main/java/info/istlab/Zemi01/NumericDemo.java +++ b/src/main/java/info/istlab/Zemi01/NumericDemo.java @@ -3,7 +3,7 @@ public class NumericDemo { public static void main(String[] args) { // ランチャーを起動する場合 - String[] opts = { "IEEE754view", "Lagrange", "RegLine", "NormalDistribution" }; + String[] opts = { "IEEE754view", "Lagrange", "RegLine", "NormalDistribution","WelchTtest" }; Launcher.show(opts, "info.istlab.Zemi01.numeric"); } } diff --git a/src/main/java/info/istlab/Zemi01/numeric/NormalDistribution.java b/src/main/java/info/istlab/Zemi01/numeric/NormalDistribution.java index b4649e6..a39e1fc 100644 --- a/src/main/java/info/istlab/Zemi01/numeric/NormalDistribution.java +++ b/src/main/java/info/istlab/Zemi01/numeric/NormalDistribution.java @@ -5,6 +5,8 @@ import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; +import java.awt.event.KeyEvent; +import java.awt.event.KeyListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; @@ -22,7 +24,7 @@ * 正規分布、ガウス分布 */ -public class NormalDistribution extends JPanel implements MouseListener, MouseMotionListener { +public class NormalDistribution extends JPanel implements MouseListener, MouseMotionListener, KeyListener { private static final long serialVersionUID = -919448575666487391L; public static JFrame jf; @@ -40,7 +42,7 @@ jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); System.out.println("正規分布、ガウス分布 "); System.out.println("つかいかた:(1)右クリックで、点を追加 (2)左ドラッグで、点移動 or グラフ移動 (3) 点の上で右クリックすると、点が消えます。"); - + System.out.println("Enterをおすと、ランダムな点を生成します。"); } Point2D offset; @@ -94,19 +96,25 @@ public NormalDistribution() { offset = new Point2D.Double(0, 100); - points = new ArrayList(); dim = new Dimension(500, 400); addMouseListener(this); addMouseMotionListener(this); + addKeyListener(this); + this.setFocusable(true); + this.requestFocusInWindow(); + replot(); + setBackground(Color.white); + setForeground(Color.black); + } + public void replot(){ + points = new ArrayList(); Random rand = new Random(); for (int i = 0; i < 7; i++) { int randx = rand.nextInt(-40, 40); int randy = rand.nextInt(-10,0); points.add(new Point2D.Double(randx, randy)); } - setBackground(Color.white); - setForeground(Color.black); } public void paint(Graphics g) { @@ -275,4 +283,26 @@ repaint(); } + @Override + public void keyTyped(KeyEvent e) { + // TODO Auto-generated method stub + + } + + @Override + public void keyPressed(KeyEvent e) { + if (e.getKeyCode() == KeyEvent.VK_ENTER) { + replot(); + updateNormDist(); + repaint(); + } + + } + + @Override + public void keyReleased(KeyEvent e) { + // TODO Auto-generated method stub + + } + } diff --git a/src/main/java/info/istlab/Zemi01/numeric/WelchTtest.java b/src/main/java/info/istlab/Zemi01/numeric/WelchTtest.java index 02cb95d..4bb3e2c 100644 --- a/src/main/java/info/istlab/Zemi01/numeric/WelchTtest.java +++ b/src/main/java/info/istlab/Zemi01/numeric/WelchTtest.java @@ -42,6 +42,7 @@ jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); System.out.println("正規分布、ガウス分布 "); System.out.println("つかいかた:(1)右クリックで、点を追加 (2)左ドラッグで、点移動 or グラフ移動 (3) 点の上で右クリックすると、点が消えます。"); + System.out.println("Enterをおすと、ランダムな点を生成します。"); } Point2D offset; @@ -278,7 +279,7 @@ @Override public void keyPressed(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_ENTER) { - System.out.println(e.getKeyCode()); + // System.out.println(e.getKeyCode()); normdist[0] = new ND(Color.blue, 0, 0); normdist[1] = new ND(Color.green, 20, -30);