首页 > 解决方案 > JFreeChart 显示每个 x 轴数据的值

问题描述

我正在尝试为数据集中的每个计数正确设置 x 轴,但我没有以正确的方式获得。与dataset变量一样,我尝试从另一个对象中保存我想要的值;显示它们时,它们看起来像是在0价值位置累积。

这是我用于创建图表的方法:

    public void createSampleData() {
        dataset = new XYSeries(TITLE_NAME);
        int numberOfPixels = 0;
        double[] wavelength;
        double[] spectrum;
        try {
            sts.deviceState();
            numberOfPixels = sts.getNumberOfPixels();
            wavelength = sts.getWavelength();
            spectrum = sts.getSpectum();
            
            for(int i = 0; i < numberOfPixels; i++) {
                dataset.add(spectrum[i], wavelength[i]);
            }
            
        }catch (NoDeviceFoundException e) {
            System.out.println(e.getMessage());
        }
        lineChart = ChartFactory.createXYLineChart(
                 TITLE_NAME,
                 X_AXIS_NAME,
                 Y_AXIS_NAME,
                 new XYSeriesCollection(dataset));

        lineChart.setAntiAlias(antialiasingstate);
        lineChart.removeLegend(); 
        lineChart.setTitle(TITLE_NAME);
        final XYPlot plot = (XYPlot) lineChart.getPlot();
        final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
        rangeAxis.setRange(Y_AXIS_MIN_VALUE, Y_AXIS_MAX_VALUE);
        chartPanel.setChart(lineChart);
    }

它的外观: 在此处输入图像描述

设置我缺少的情节有什么问题吗?

标签: javajfreechart

解决方案


推荐阅读