⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 regressiondemo1.java

📁 很好的制作统计图表的代码
💻 JAVA
字号:
// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 7/18/2005 5:13:55 PM
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) 

package org.jfree.chart.demo;

import java.awt.Color;
import java.awt.Container;
import javax.swing.JTabbedPane;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.*;
import org.jfree.data.function.LineFunction2D;
import org.jfree.data.function.PowerFunction2D;
import org.jfree.data.general.DatasetUtilities;
import org.jfree.data.statistics.Regression;
import org.jfree.data.xy.*;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;

public class RegressionDemo1 extends ApplicationFrame
{

    public RegressionDemo1(String s)
    {
        super(s);
        data1 = createSampleData1();
        getContentPane().add(createContent());
    }

    private JTabbedPane createContent()
    {
        JTabbedPane jtabbedpane = new JTabbedPane();
        jtabbedpane.add("Linear", createChartPanel1());
        jtabbedpane.add("Power", createChartPanel2());
        return jtabbedpane;
    }

    private ChartPanel createChartPanel1()
    {
        NumberAxis numberaxis = new NumberAxis("X");
        numberaxis.setAutoRangeIncludesZero(false);
        NumberAxis numberaxis1 = new NumberAxis("Y");
        numberaxis1.setAutoRangeIncludesZero(false);
        StandardXYItemRenderer standardxyitemrenderer = new StandardXYItemRenderer(1);
        standardxyitemrenderer.setShapesFilled(true);
        XYPlot xyplot = new XYPlot(data1, numberaxis, numberaxis1, standardxyitemrenderer);
        double ad[] = Regression.getOLSRegression(data1, 0);
        LineFunction2D linefunction2d = new LineFunction2D(ad[0], ad[1]);
        XYDataset xydataset = DatasetUtilities.sampleFunction2D(linefunction2d, 2D, 11D, 100, "Fitted Regression Line");
        xyplot.setDataset(1, xydataset);
        DefaultXYItemRenderer defaultxyitemrenderer = new DefaultXYItemRenderer();
        defaultxyitemrenderer.setSeriesPaint(0, Color.blue);
        xyplot.setRenderer(1, defaultxyitemrenderer);
        JFreeChart jfreechart = new JFreeChart("Linear Regression", JFreeChart.DEFAULT_TITLE_FONT, xyplot, true);
        ChartPanel chartpanel = new ChartPanel(jfreechart, false);
        return chartpanel;
    }

    private ChartPanel createChartPanel2()
    {
        NumberAxis numberaxis = new NumberAxis("X");
        numberaxis.setAutoRangeIncludesZero(false);
        NumberAxis numberaxis1 = new NumberAxis("Y");
        numberaxis1.setAutoRangeIncludesZero(false);
        StandardXYItemRenderer standardxyitemrenderer = new StandardXYItemRenderer(1);
        standardxyitemrenderer.setShapesFilled(true);
        XYPlot xyplot = new XYPlot(data1, numberaxis, numberaxis1, standardxyitemrenderer);
        double ad[] = Regression.getPowerRegression(data1, 0);
        PowerFunction2D powerfunction2d = new PowerFunction2D(ad[0], ad[1]);
        XYDataset xydataset = DatasetUtilities.sampleFunction2D(powerfunction2d, 2D, 11D, 100, "Fitted Regression Line");
        DefaultXYItemRenderer defaultxyitemrenderer = new DefaultXYItemRenderer();
        defaultxyitemrenderer.setSeriesPaint(0, Color.blue);
        xyplot.setDataset(1, xydataset);
        xyplot.setRenderer(1, defaultxyitemrenderer);
        JFreeChart jfreechart = new JFreeChart("Power Regression", JFreeChart.DEFAULT_TITLE_FONT, xyplot, true);
        ChartPanel chartpanel = new ChartPanel(jfreechart, false);
        return chartpanel;
    }

    private XYDataset createSampleData1()
    {
        XYSeries xyseries = new XYSeries("Series 1");
        xyseries.add(2D, 56.270000000000003D);
        xyseries.add(3D, 41.32D);
        xyseries.add(4D, 31.449999999999999D);
        xyseries.add(5D, 30.050000000000001D);
        xyseries.add(6D, 24.690000000000001D);
        xyseries.add(7D, 19.780000000000001D);
        xyseries.add(8D, 20.940000000000001D);
        xyseries.add(9D, 16.73D);
        xyseries.add(10D, 14.210000000000001D);
        xyseries.add(11D, 12.44D);
        XYSeriesCollection xyseriescollection = new XYSeriesCollection(xyseries);
        return xyseriescollection;
    }

    public static void main(String args[])
    {
        RegressionDemo1 regressiondemo1 = new RegressionDemo1("Regression Demo 1");
        regressiondemo1.pack();
        RefineryUtilities.centerFrameOnScreen(regressiondemo1);
        regressiondemo1.setVisible(true);
    }

    private XYDataset data1;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -