Example usage for org.jfree.chart ChartMouseEvent getTrigger

List of usage examples for org.jfree.chart ChartMouseEvent getTrigger

Introduction

In this page you can find the example usage for org.jfree.chart ChartMouseEvent getTrigger.

Prototype

public MouseEvent getTrigger() 

Source Link

Document

Returns the mouse event that triggered this event.

Usage

From source file:org.jfree.chart.demo.MouseListenerDemo1.java

public void chartMouseMoved(ChartMouseEvent chartmouseevent) {
    int i = chartmouseevent.getTrigger().getX();
    int j = chartmouseevent.getTrigger().getY();
    ChartEntity chartentity = chartmouseevent.getEntity();
    if (chartentity != null)
        System.out.println("Mouse moved: " + i + ", " + j + ": " + chartentity.toString());
    else//from  w  ww .  jav  a 2 s.  com
        System.out.println("Mouse moved: " + i + ", " + j + ": null entity.");
}

From source file:org.jfree.chart.demo.MouseListenerDemo4.java

public void chartMouseClicked(ChartMouseEvent chartmouseevent) {
    int i = chartmouseevent.getTrigger().getX();
    int j = chartmouseevent.getTrigger().getY();
    System.out.println("x = " + i + ", y = " + j);
    Point2D point2d = chartPanel.translateScreenToJava2D(new Point(i, j));
    XYPlot xyplot = (XYPlot) chart.getPlot();
    ChartRenderingInfo chartrenderinginfo = chartPanel.getChartRenderingInfo();
    java.awt.geom.Rectangle2D rectangle2d = chartrenderinginfo.getPlotInfo().getDataArea();
    ValueAxis valueaxis = xyplot.getDomainAxis();
    org.jfree.ui.RectangleEdge rectangleedge = xyplot.getDomainAxisEdge();
    ValueAxis valueaxis1 = xyplot.getRangeAxis();
    org.jfree.ui.RectangleEdge rectangleedge1 = xyplot.getRangeAxisEdge();
    double d = valueaxis.java2DToValue(point2d.getX(), rectangle2d, rectangleedge);
    double d1 = valueaxis1.java2DToValue(point2d.getY(), rectangle2d, rectangleedge1);
    System.out.println("Chart: x = " + d + ", y = " + d1);
}

From source file:com.sciaps.listener.JFreeChartMouseListener.java

@Override
public void chartMouseClicked(ChartMouseEvent cme) {

    if (cme.getTrigger().isControlDown()) {

        Point2D p = cme.getTrigger().getPoint();
        Rectangle2D plotArea = chartPanel_.getScreenDataArea();
        XYPlot plot = (XYPlot) jFreeChart_.getPlot();
        double chartX = plot.getDomainAxis().java2DToValue(p.getX(), plotArea, plot.getDomainAxisEdge());
        double chartY = plot.getRangeAxis().java2DToValue(p.getY(), plotArea, plot.getRangeAxisEdge());

        if (callback_ != null) {
            callback_.jFreeChartOnClicked(chartX, chartY);
        }//w w  w .  jav  a2s .c  o  m
    }
}

From source file:MouseEventListener.java

@Override
public void chartMouseClicked(ChartMouseEvent arg0) {

    Point point = arg0.getTrigger().getPoint();
    //add a new point to the model editor series 
    int x = point.x;
    int y = point.y;

    Rectangle2D dataArea = chartPanel.getScreenDataArea();
    float x0 = (float) chartPanel.getChart().getXYPlot().getRangeAxis().java2DToValue(y, dataArea,
            RectangleEdge.LEFT);//from   w w  w.  ja  v  a  2  s .com
    float t0 = (float) chartPanel.getChart().getXYPlot().getDomainAxis().java2DToValue(x, dataArea,
            RectangleEdge.BOTTOM);

    //simuladorGUI.nuevoPuntoInicial(t0, x0);
}

From source file:grafix.telas.componentes.GrafixChartMouseListener.java

public void chartMouseClicked(ChartMouseEvent evt) {
    if (evt.getTrigger().getButton() == MouseEvent.BUTTON3) {
        int clickY = evt.getTrigger().getY();
        for (int i = 0; i < panel.getNumPlots(); i++) {
            int finalPlot = (int) panel.getAreaData(i).getY() + (int) panel.getAreaData(i).getHeight();
            if (clickY <= finalPlot) {
                plotClicado = i;/*from ww  w.j a v  a2 s .com*/
                popup.show(evt.getTrigger().getComponent(), evt.getTrigger().getX(), evt.getTrigger().getY());
                System.out.println("plot " + i);
                return;
            }
        }
    }
}

From source file:fi.smaa.jsmaa.gui.components.ValueFunctionMouseListener.java

private double getRealY(ChartMouseEvent ev) {
    int relativeY = ev.getTrigger().getY();
    Rectangle2D dataArea = chartPanel.getScreenDataArea();
    RectangleEdge redge = plot.getRangeAxisEdge();
    return plot.getRangeAxis().java2DToValue(relativeY, dataArea, redge);
}

From source file:fi.smaa.jsmaa.gui.components.ValueFunctionMouseListener.java

private double getRealX(ChartMouseEvent ev) {
    int relativeX = ev.getTrigger().getX();
    Rectangle2D dataArea = chartPanel.getScreenDataArea();
    RectangleEdge dedge = plot.getDomainAxisEdge();
    return plot.getDomainAxis().java2DToValue(relativeX, dataArea, dedge);
}

From source file:org.jfree.chart.demo.ScatterPlotDemo3.java

/**
 * Callback method for receiving notification of a mouse click on a chart.
 *
 * @param event  information about the event.
 *///from  w ww . j av  a  2  s.c  o m
public void chartMouseClicked(ChartMouseEvent event) {
    int x = event.getTrigger().getX();
    int y = event.getTrigger().getY();

    // the following translation takes account of the fact that the chart image may 
    // have been scaled up or down to fit the panel...
    Point2D p = chartPanel.translateScreenToJava2D(new Point(x, y));

    // now convert the Java2D coordinate to axis coordinates...
    XYPlot plot = chartPanel.getChart().getXYPlot();
    Rectangle2D dataArea = chartPanel.getChartRenderingInfo().getPlotInfo().getDataArea();
    double xx = plot.getDomainAxis().java2DToValue(p.getX(), dataArea, plot.getDomainAxisEdge());
    double yy = plot.getRangeAxis().java2DToValue(p.getY(), dataArea, plot.getRangeAxisEdge());

    // just for fun, lets convert the axis coordinates back to component coordinates...
    double xxx = plot.getDomainAxis().valueToJava2D(xx, dataArea, plot.getDomainAxisEdge());
    double yyy = plot.getRangeAxis().valueToJava2D(yy, dataArea, plot.getRangeAxisEdge());

    Point2D p2 = chartPanel.translateJava2DToScreen(new Point2D.Double(xxx, yyy));
    System.out
            .println("Mouse coordinates are (" + x + ", " + y + "), in data space = (" + xx + ", " + yy + ").");
    System.out.println("--> (" + p2.getX() + ", " + p2.getY() + ")");
}

From source file:com.philng.telemetrydisplay.GraphDisplay.java

/**
 * Build all the initial data/* w  ww.  j  av a2s.  c o  m*/
 */
public GraphDisplay() {
    voltage = new TimeSeries("Voltage");
    current = new TimeSeries("Current");

    this.setLayout(new BorderLayout());
    final JFreeChart chart = createChart(createDatasetVoltage());

    final ChartPanel chartPanel = new ChartPanel(chart);

    add(chartPanel, BorderLayout.CENTER);
    chartPanel.setVisible(true);
    setVisible(true);

    // Add a mouse listener for when the user double clicks the mousse
    // on the graph, it will reset the zoome
    ChartMouseListener cml = new ChartMouseListener() {
        @Override
        public void chartMouseClicked(ChartMouseEvent chartMouseEvent) {
            if (chartMouseEvent.getTrigger().getClickCount() == 2) {
                chartPanel.restoreAutoBounds();
            }
        }

        @Override
        public void chartMouseMoved(ChartMouseEvent chartMouseEvent) {

        }
    };
    chartPanel.addChartMouseListener(cml);
}

From source file:lu.lippmann.cdb.ext.hydviga.ui.GapsUIUtil.java

private static void addExportPopupMenu(final Instances ds, final ChartPanel cp) {
    cp.addChartMouseListener(new ChartMouseListener() {
        public void chartMouseClicked(ChartMouseEvent e) {
            final JPopupMenu jPopupMenu = new JPopupMenu("feur");
            final JMenuItem mi1 = new JMenuItem("Export as CSV");
            mi1.addActionListener(new ActionListener() {
                @Override/*from  w  w  w  . j  a  v a2 s  .c  o m*/
                public void actionPerformed(final ActionEvent e) {
                    final JFileChooser fc = new JFileChooser();
                    fc.setAcceptAllFileFilterUsed(false);
                    final int returnVal = fc.showSaveDialog(cp);
                    if (returnVal == JFileChooser.APPROVE_OPTION) {
                        try {
                            final File file = fc.getSelectedFile();
                            WekaDataAccessUtil.saveInstancesIntoCSVFile(ds, file);
                        } catch (final Exception ee) {
                            ee.printStackTrace();
                        }
                    }
                }
            });
            jPopupMenu.add(mi1);
            jPopupMenu.show(cp, e.getTrigger().getX(), e.getTrigger().getY());
        }

        public void chartMouseMoved(ChartMouseEvent e) {
        }
    });
}