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

📄 symbolicyplotdemo.java

📁 这是一个segy数据显示程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        // make a combined plot        final CombinedRangeXYPlot mainPlot = new CombinedRangeXYPlot(symbolicAxis);        // add the sub-plots        final XYItemRenderer renderer0 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot0 = new XYPlot(series0, valueAxis0, null, renderer0);        final XYItemRenderer renderer1 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot1 = new XYPlot(series1, valueAxis1, null, renderer1);        final XYItemRenderer renderer2 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot2 = new XYPlot(series2, valueAxis2, null, renderer2);        final XYItemRenderer renderer3 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot3 = new XYPlot(series3, valueAxis3, null, renderer3);        final XYItemRenderer renderer4 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot4 = new XYPlot(series4, valueAxis4, null, renderer4);        final XYItemRenderer renderer5 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot5 = new XYPlot(series5, valueAxis5, null, renderer5);        final XYItemRenderer renderer6 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot6 = new XYPlot(series6, valueAxis6, null, renderer6);        final XYItemRenderer renderer7 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot7 = new XYPlot(series7, valueAxis7, null, renderer7);        mainPlot.add(subplot0, 1);        mainPlot.add(subplot1, 1);        mainPlot.add(subplot2, 1);        mainPlot.add(subplot3, 1);        mainPlot.add(subplot4, 1);        mainPlot.add(subplot5, 1);        mainPlot.add(subplot6, 1);        mainPlot.add(subplot7, 1);        // make the top level JFreeChart object        final JFreeChart chart = new JFreeChart(            title, JFreeChart.DEFAULT_TITLE_FONT, mainPlot, true        );        // then customise it a little...        chart.setBackgroundPaint(new GradientPaint(0, 0, Color.white, 0, 1000, Color.blue));        // and present it in a frame...        final JFrame ySymbolicFrame = new ChartFrame(frameTitle, chart);        ySymbolicFrame.pack();        RefineryUtilities.positionFrameRandomly(ySymbolicFrame);        ySymbolicFrame.show();    }    /**     * Displays a vertically combined symbolic plot.     *     * @param frameTitle  the frame title.     * @param data1  dataset 1.     * @param data2  dataset 2.     */    private static void displayYSymbolicCombinedVertically(final String frameTitle,                                                           final SampleYSymbolicDataset data1,                                                           final SampleYSymbolicDataset data2) {        final String title = "Animals Vertically Combined";        final String xAxisLabel = "Miles";        final String yAxisLabel = null;        // create master dataset...        final CombinedDataset data = new CombinedDataset();        data.add(data1);        data.add(data2);        // decompose data...        final XYDataset series0 = new SubSeriesDataset(data, 0);        final XYDataset series1 = new SubSeriesDataset(data, 1);        final XYDataset series2 = new SubSeriesDataset(data, 2);        final XYDataset series3 = new SubSeriesDataset(data, 3);        final XYDataset series4 = new SubSeriesDataset(data, 4);        final XYDataset series5 = new SubSeriesDataset(data, 5);        final XYDataset series6 = new SubSeriesDataset(data, 6);        final XYDataset series7 = new SubSeriesDataset(data, 7);        // common horizontal and vertical axes        final ValueAxis valueAxis = new NumberAxis(xAxisLabel);        final SymbolicAxis symbolicAxis1            = new SymbolicAxis(yAxisLabel, ((YisSymbolic) data1).getYSymbolicValues());        final SymbolicAxis symbolicAxis2            = new SymbolicAxis(yAxisLabel, ((YisSymbolic) data2).getYSymbolicValues());        // create the main plot...        final CombinedDomainXYPlot mainPlot = new CombinedDomainXYPlot(valueAxis);        // and the sub-plots...        final XYItemRenderer renderer0 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot0 = new XYPlot(series0, null, symbolicAxis1, renderer0);        final XYItemRenderer renderer1 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot1 = new XYPlot(series1, null, symbolicAxis1, renderer1);        final XYItemRenderer renderer2 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot2 = new XYPlot(series2, null, symbolicAxis1, renderer2);        final XYItemRenderer renderer3 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot3 = new XYPlot(series3, null, symbolicAxis1, renderer3);        final XYItemRenderer renderer4 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot4 = new XYPlot(series4, null, symbolicAxis2, renderer4);        final XYItemRenderer renderer5 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot5 = new XYPlot(series5, null, symbolicAxis2, renderer5);        final XYItemRenderer renderer6 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot6 = new XYPlot(series6, null, symbolicAxis2, renderer6);        final XYItemRenderer renderer7 = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, null        );        final XYPlot subplot7 = new XYPlot(series7, null, symbolicAxis2, renderer7);        // add the subplots to the main plot...        mainPlot.add(subplot0, 1);        mainPlot.add(subplot1, 1);        mainPlot.add(subplot2, 1);        mainPlot.add(subplot3, 1);        mainPlot.add(subplot4, 1);        mainPlot.add(subplot5, 1);        mainPlot.add(subplot6, 1);        mainPlot.add(subplot7, 1);        // construct the chart...        final JFreeChart chart = new JFreeChart(            title, JFreeChart.DEFAULT_TITLE_FONT, mainPlot, true        );        chart.setBackgroundPaint(new GradientPaint(0, 0, Color.white, 0, 1000, Color.blue));        // and present it in a frame...        final JFrame frame = new ChartFrame(frameTitle, chart);        frame.pack();        RefineryUtilities.positionFrameRandomly(frame);        frame.show();    }    /**     * Creates a XY graph with symbolic value on Y axis.     *     * @param title  the chart title.     * @param xAxisLabel  the x-axis label.     * @param yAxisLabel  the y-axis label.     * @param data  the data.     * @param legend  a flag controlling whether or not the legend is created for the chart.     *     * @return the chart.     */    public static JFreeChart createYSymbolicPlot(final String title, final String xAxisLabel,                                                 final String yAxisLabel, final XYDataset data,                                                 final boolean legend) {        final ValueAxis valueAxis = new NumberAxis(xAxisLabel);        final SymbolicAxis symbolicAxis            = new SymbolicAxis(yAxisLabel, ((YisSymbolic) data).getYSymbolicValues());        final XYPlot plot = new XYPlot(data, valueAxis, symbolicAxis, null);        final XYItemRenderer renderer = new StandardXYItemRenderer(            StandardXYItemRenderer.SHAPES, new SymbolicXYItemLabelGenerator()        );        plot.setRenderer(renderer);        final JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, legend);        return chart;    }    /**     * Creates a sample symbolic dataset.     *     * @return the dataset.     */    public static SampleYSymbolicDataset createYSymbolicSample1() {        final String[] sData = {"Lion", "Elephant", "Monkey", "Hippopotamus", "Giraffe"};        final SampleYSymbolicDataset data            = new SampleYSymbolicDataset("AY Sample", 20, sData, 4, 20,                new String[] {"A Fall", "A Spring", "A Summer", "A Winter"});        return data;    }    /**     * Creates a sample symbolic dataset.     *     * @return The dataset.     */    public static SampleYSymbolicDataset createYSymbolicSample2() {        final String[] sData = {"Giraffe", "Gazelle", "Zebra", "Gnu"};        final SampleYSymbolicDataset data            = new SampleYSymbolicDataset("BY Sample", 40, sData, 4, 20,                new String[] {"B Fall", "B Spring", "B Summer", "B Winter"});        return data;    }    /**     * The starting point for the demonstration application.     *     * @param args  ignored.     */    public static void main(final String[] args) {        final SampleYSymbolicDataset s1 = createYSymbolicSample1();        final SampleYSymbolicDataset s2 = createYSymbolicSample2();        displayYSymbolic("Example 1", s1, "Animal A", "Miles", "Animal");        displayYSymbolic("Example 2", s2, "Animal B", "Miles", "Animal");        displayYSymbolicCombinedHorizontally("Example 3", (SampleYSymbolicDataset) s1.clone(),                                                          (SampleYSymbolicDataset) s2.clone());        displayYSymbolicCombinedVertically("Example 4", (SampleYSymbolicDataset) s1.clone(),                                                        (SampleYSymbolicDataset) s2.clone());        displayYSymbolicOverlaid("Example 5", (SampleYSymbolicDataset) s1.clone(),                                              (SampleYSymbolicDataset) s2.clone());    }}

⌨️ 快捷键说明

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