Example usage for org.jfree.chart ChartFactory createScatterPlot

List of usage examples for org.jfree.chart ChartFactory createScatterPlot

Introduction

In this page you can find the example usage for org.jfree.chart ChartFactory createScatterPlot.

Prototype

public static JFreeChart createScatterPlot(String title, String xAxisLabel, String yAxisLabel,
        XYDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 

Source Link

Document

Creates a scatter plot with default settings.

Usage

From source file:com.marmoush.jann.chart.ScatterDataImg.java

@Override
public void createJPEG() {
    JFreeChart chart = ChartFactory.createScatterPlot(getTitle(), getxAxisTitle(), getyAxisTitle(),
            getXySeriesCollec(), getOrientation(), isLegend(), isTooltips(), isUrls());
    setChart(chart);//from w  ww. j a  v a  2 s  . com
    super.createJPEG();
}

From source file:com.thecoderscorner.groovychart.chart.ScatterPlot.java

public JFreeChart createChart() {
    return ChartFactory.createScatterPlot(getTitle(), getXAxisLabel(), getYAxisLabel(),
            (XYDataset) getDataset(), getOrientation(), isLegend(), isTooltips(), isUrls());
}

From source file:it.eng.spagobi.engines.chart.bo.charttypes.scattercharts.SimpleScatter.java

public JFreeChart createChart(DatasetMap datasets) {

    DefaultXYDataset dataset = (DefaultXYDataset) datasets.getDatasets().get("1");

    JFreeChart chart = ChartFactory.createScatterPlot(name, yLabel, xLabel, dataset, PlotOrientation.HORIZONTAL,
            false, true, false);/*from   w w  w. jav  a  2s . c om*/

    Font font = new Font("Tahoma", Font.BOLD, titleDimension);
    //TextTitle title = new TextTitle(name, font);
    TextTitle title = setStyleTitle(name, styleTitle);
    chart.setTitle(title);
    chart.setBackgroundPaint(Color.white);
    if (subName != null && !subName.equals("")) {
        TextTitle subTitle = setStyleTitle(subName, styleSubTitle);
        chart.addSubtitle(subTitle);
    }

    XYPlot plot = (XYPlot) chart.getPlot();
    plot.setForegroundAlpha(0.65f);

    XYItemRenderer renderer = plot.getRenderer();

    int seriesN = dataset.getSeriesCount();
    if (colorMap != null) {
        for (int i = 0; i < seriesN; i++) {
            String serieName = (String) dataset.getSeriesKey(i);
            Color color = (Color) colorMap.get(serieName);
            if (color != null) {
                renderer.setSeriesPaint(i, color);
            }
        }
    }

    // increase the margins to account for the fact that the auto-range 
    // doesn't take into account the bubble size...
    NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis();
    domainAxis.setAutoRange(true);
    domainAxis.setRange(yMin, yMax);
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setAutoRange(true);
    rangeAxis.setRange(xMin, xMax);

    if (legend == true) {
        drawLegend(chart);
    }
    return chart;
}

From source file:com.marmoush.jann.chart.jframe.ScatterDataJf.java

@Override
public void run() {
    JFreeChart chart = ChartFactory.createScatterPlot(getTitle(), getxAxisTitle(), getyAxisTitle(),
            getXySeriesCollection(), getOrientation(), isLegend(), isTooltips(), isUrls());
    setChart(chart);/*from ww w . j  av a 2 s  .co m*/
    super.run();
}

From source file:lu.lippmann.cdb.lab.mds.MDSViewBuilder.java

/**
 * /*from   w  w w .  j  a  v  a2 s.  c  o  m*/
 */
public static JXPanel buildMDSViewFromDataSet(final Instances instances, final MDSResult mdsResult,
        final int maxInstances, final Listener<Instances> listener, final String... attrNameToUseAsPointTitle)
        throws Exception {

    final XYSeriesCollection dataset = new XYSeriesCollection();

    final JFreeChart chart = ChartFactory.createScatterPlot("", // title 
            "X", "Y", // axis labels 
            dataset, // dataset 
            PlotOrientation.VERTICAL, attrNameToUseAsPointTitle.length == 0, // legend? 
            true, // tooltips? yes 
            false // URLs? no 
    );

    final XYPlot xyPlot = (XYPlot) chart.getPlot();

    xyPlot.setBackgroundPaint(Color.WHITE);
    xyPlot.getDomainAxis().setTickLabelsVisible(false);
    xyPlot.getRangeAxis().setTickLabelsVisible(false);

    //FIXME : should be different for Shih
    if (!mdsResult.isNormalized()) {
        String stress = FormatterUtil.DECIMAL_FORMAT
                .format(ClassicMDS.getKruskalStressFromMDSResult(mdsResult));
        chart.setTitle(mdsResult.getCInstances().isCollapsed()
                ? "Collapsed MDS(Instances=" + maxInstances + ",Stress=" + stress + ")"
                : "MDS(Stress=" + stress + ")");
    } else {
        chart.setTitle(mdsResult.getCInstances().isCollapsed() ? "Collapsed MDS(Instances=" + maxInstances + ")"
                : "MDS");
    }

    final SimpleMatrix coordinates = mdsResult.getCoordinates();
    buildFilteredSeries(mdsResult, xyPlot, attrNameToUseAsPointTitle);

    final ChartPanel chartPanel = new ChartPanel(chart);
    chartPanel.setMouseWheelEnabled(true);
    chartPanel.setPreferredSize(new Dimension(1200, 900));
    chartPanel.setBorder(new TitledBorder("MDS Projection"));
    chartPanel.setBackground(Color.WHITE);

    final JButton selectionButton = new JButton("Select data");
    selectionButton.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent e) {
            final org.jfree.data.Range XDomainRange = xyPlot.getDomainAxis().getRange();
            final org.jfree.data.Range YDomainRange = xyPlot.getRangeAxis().getRange();
            final Instances cInstances = mdsResult.getCollapsedInstances();
            final Instances selectedInstances = new Instances(cInstances, 0);
            List<Instances> clusters = null;
            if (mdsResult.getCInstances().isCollapsed()) {
                clusters = mdsResult.getCInstances().getCentroidMap().getClusters();
            }
            for (int i = 0; i < cInstances.numInstances(); i++) {
                final Instance centroid = instances.instance(i);
                if (XDomainRange.contains(coordinates.get(i, 0))
                        && YDomainRange.contains(coordinates.get(i, 1))) {
                    if (mdsResult.getCInstances().isCollapsed()) {
                        if (clusters != null) {
                            final Instances elementsOfCluster = clusters.get(i);
                            final int nbElements = elementsOfCluster.numInstances();
                            for (int k = 0; k < nbElements; k++) {
                                selectedInstances.add(elementsOfCluster.get(k));
                            }
                        }
                    } else {
                        selectedInstances.add(centroid);
                    }
                }
            }
            if (listener != null) {
                listener.onAction(selectedInstances);
            }
        }
    });

    final JXPanel allPanel = new JXPanel();
    allPanel.setLayout(new BorderLayout());
    allPanel.add(chartPanel, BorderLayout.CENTER);
    final JXPanel southPanel = new JXPanel();
    southPanel.add(selectionButton);
    allPanel.add(southPanel, BorderLayout.SOUTH);
    return allPanel;
}

From source file:edu.wustl.cab2b.client.ui.visualization.charts.ScatterPlot.java

protected JFreeChart createChart(Dataset dataset) {
    XYDataset xyDataset = (XYDataset) dataset;
    JFreeChart jfreechart = ChartFactory.createScatterPlot("Scatter Plot", "X", "Y", xyDataset,
            PlotOrientation.VERTICAL, true, true, false);
    jfreechart.setBackgroundPaint(Color.white);

    XYPlot xyplot = (XYPlot) jfreechart.getPlot();
    xyplot.setBackgroundPaint(Color.white);
    XYDotRenderer xydotrenderer = new XYDotRenderer();
    xydotrenderer.setDotWidth(4);/*from w w  w  . ja v  a 2s. co m*/
    xydotrenderer.setDotHeight(4);

    xyplot.setRenderer(xydotrenderer);
    xyplot.setDomainCrosshairVisible(true);
    xyplot.setRangeCrosshairVisible(true);

    NumberAxis numberaxis = (NumberAxis) xyplot.getDomainAxis();
    numberaxis.setAutoRangeIncludesZero(false);

    return jfreechart;
}

From source file:com.marmoush.jann.chart.ScatterDataImg.java

@Override
public void createPNG() {
    JFreeChart chart = ChartFactory.createScatterPlot(getTitle(), getxAxisTitle(), getyAxisTitle(),
            getXySeriesCollec(), getOrientation(), isLegend(), isTooltips(), isUrls());
    setChart(chart);/* www .  j  a  va 2 s. c  o m*/
    super.createPNG();
}

From source file:org.rhwlab.ace3d.VolumeIntensityPlot.java

public VolumeIntensityPlot(ImagedEmbryo emb) {
    this.embryo = emb;
    collect = new XYSeriesCollection();
    series = new XYSeries("Nuclei");
    collect.addSeries(series);//from   w  w w.jav a2 s .  co m
    chart = ChartFactory.createScatterPlot("", "Volume", "AvgIntensity", collect, PlotOrientation.VERTICAL,
            false, true, true);
    XYPlot plot = (XYPlot) chart.getPlot();
    plot.setDomainCrosshairVisible(true);
    plot.setRangeCrosshairVisible(true);
    XYDotRenderer renderer = new XYDotRenderer();
    renderer.setDotHeight(4);
    renderer.setDotWidth(4);
    //        plot.setRenderer(renderer);
    ChartPanel panel = new ChartPanel(chart);
    panel.addChartMouseListener(new ChartMouseListener() {
        @Override
        public void chartMouseClicked(ChartMouseEvent event) {
            ChartEntity entity = event.getEntity();
            if (entity instanceof XYItemEntity) {
                XYItemEntity xyEntity = (XYItemEntity) entity;
                NucleusPlotDataItem item = (NucleusPlotDataItem) series.getDataItem(xyEntity.getItem());
                embryo.setSelectedNucleus(item.nuc);
            }
        }

        @Override
        public void chartMouseMoved(ChartMouseEvent event) {

        }
    });
    this.add(panel);
    embryo.getNucleusFile().addSelectionOberver(this);
}

From source file:moviedatas.View.GlobalChart.java

public JPanel initView() {
    observer = this;
    ArrayList<Movie> movies = MovieListController.allMovies;
    XYSeries series = new XYSeries("Movie");
    for (int i = 0; i < movies.size(); i++) {
        Movie currentMovie = movies.get(i);
        series.add(currentMovie.getGross(), currentMovie.getScore());
    }//w w w  .ja va2 s.  c o m
    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(series);
    JFreeChart scatterPlot = ChartFactory.createScatterPlot("", "Gross (in $)", "Score", dataset, VERTICAL,
            true, true, false);

    cPanel = new ChartPanel(scatterPlot);
    cPanel.setPreferredSize(new Dimension(500, 250));
    return cPanel;
}

From source file:stratego.neural.net.RandomSampleTest.java

private static void plotDataSet(List<double[]> data) {

    XYSeriesCollection plotData = new XYSeriesCollection();

    for (double[] ds : data) {

        XYSeries series = new XYSeries("Winrate");

        for (int i = 0; i < ds.length; i++) {
            series.add((double) i, ds[i]);
        }//  ww w.  j a  va 2s  . c  o  m

        plotData.addSeries(series);
    }

    String title = "Simulating Random Samples";
    String xAxisLabel = "Matches";
    String yAxisLabel = "Winrate";
    PlotOrientation orientation = PlotOrientation.VERTICAL;
    boolean legend = false; // might wanna set this to true at some point, but research the library
    boolean tooltips = false;
    boolean urls = false;
    JFreeChart chart = ChartFactory.createScatterPlot(title, xAxisLabel, yAxisLabel, plotData, orientation,
            legend, tooltips, urls);

    JPanel panel = new ChartPanel(chart);

    JFrame f = new JFrame();
    f.add(panel);
    f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    f.pack();
    f.setTitle("Random test simulation");

    f.setVisible(true);
}