/* * Copyright (C) 2008-2015 by Holger Arndt * * This file is part of the Universal Java Matrix Package (UJMP). * See the NOTICE file distributed with this work for additional * information regarding copyright ownership and licensing. * * UJMP is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * UJMP is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with UJMP; if not, write to the * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, * Boston, MA 02110-1301 USA */ package org.ujmp.gui.panels; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.JButton; import javax.swing.JPanel; import org.ujmp.core.calculation.Calculation.Ret; import org.ujmp.core.util.Matlab; import org.ujmp.gui.MatrixGUIObject; public class MatlabPanel extends JPanel { private static final long serialVersionUID = -2014717060178963100L; private MatrixGUIObject matrix = null; public MatlabPanel(MatrixGUIObject m) { this.matrix = m; setLayout(new FlowLayout()); add(new JButton(new MatrixPlotAction())); add(new JButton(new XYPlotAction())); add(new JButton(new ScatterPlotAction())); add(new JButton(new HistogramAction())); add(new JButton(new SurfAction())); add(new JButton(new ImagescAction())); add(new JButton(new BarAction())); add(new JButton(new BarhAction())); add(new JButton(new StemAction())); add(new JButton(new PieAction())); add(new JButton(new Pie3Action())); add(new JButton(new PairsAction())); } class ScatterPlotAction extends AbstractAction { private static final long serialVersionUID = 4837137928213709856L; public ScatterPlotAction() { super("Scatter Plot"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().plot(matrix.getMatrix().selectColumns(Ret.NEW, 0), matrix.getMatrix().selectColumns(Ret.NEW, 1), "x"); } catch (Exception e1) { e1.printStackTrace(); } } } class MatrixPlotAction extends AbstractAction { private static final long serialVersionUID = -4928348084073744818L; public MatrixPlotAction() { super("Matrix Plot"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().plot(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class XYPlotAction extends AbstractAction { private static final long serialVersionUID = -4928348084073744818L; public XYPlotAction() { super("XY Plot"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().plot(matrix.getMatrix().selectColumns(Ret.NEW, 0), matrix.getMatrix().selectColumns(Ret.NEW, 1)); } catch (Exception e1) { e1.printStackTrace(); } } } class HistogramAction extends AbstractAction { private static final long serialVersionUID = -320738954210581946L; public HistogramAction() { super("Histogram"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().hist(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class SurfAction extends AbstractAction { private static final long serialVersionUID = 1936056248662686441L; public SurfAction() { super("Surf"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().surf(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class ImagescAction extends AbstractAction { private static final long serialVersionUID = -69661897898443618L; public ImagescAction() { super("ImageSC"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().imagesc(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class BarAction extends AbstractAction { private static final long serialVersionUID = 2326046110179603901L; public BarAction() { super("Bar"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().bar(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class BarhAction extends AbstractAction { private static final long serialVersionUID = 1773781454473042057L; public BarhAction() { super("BarH"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().barh(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class StemAction extends AbstractAction { private static final long serialVersionUID = 8489278103292046885L; public StemAction() { super("Stem"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().stem(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class PairsAction extends AbstractAction { private static final long serialVersionUID = 5809558873714857141L; public PairsAction() { super("Pairs"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().plotmatrix(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class PieAction extends AbstractAction { private static final long serialVersionUID = -7468454385004258030L; public PieAction() { super("Pie Chart"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().pie(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } class Pie3Action extends AbstractAction { private static final long serialVersionUID = -6838327620135999067L; public Pie3Action() { super("3D Pie Chart"); } public void actionPerformed(ActionEvent e) { try { Matlab.getInstance().pie3(matrix.getMatrix()); } catch (Exception e1) { e1.printStackTrace(); } } } }