JavaFX:具有多个(2)y轴的条形图

时间:2017-10-17 10:59:42

标签: javafx

我想创建一个带有2 y轴的JavaFX条形图,因为系列值相距太宽,导致第二个系列在图表中没有正确显示。

为了这个问题的目的,我已经将代码贬低了它的基础:



    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.chart.BarChart;
    import javafx.scene.chart.CategoryAxis;
    import javafx.scene.chart.NumberAxis;
    import javafx.scene.chart.XYChart;
    import javafx.stage.Stage;


    public class MultiAxisTryout extends Application {

        public static void main(String[] args) {
            launch(args);
        }

        @Override
        public void start(Stage stage) {

            stage.setTitle("Bar Chart Multi Example");

            final CategoryAxis xAxis = new CategoryAxis();
            final NumberAxis yAxis = new NumberAxis();
            final BarChart bc =
                    new BarChart(xAxis,yAxis);
            bc.setTitle("Cost &  Delta by JV");
            xAxis.setLabel("JV");

            XYChart.Series series1 = new XYChart.Series();
            series1.setName("Cost");
            XYChart.Series series2 = new XYChart.Series();
            series2.setName("Delta");


            series1.getData().add(new XYChart.Data("1000000", 25000));
            series1.getData().add(new XYChart.Data("1200000", 30000));
            series2.getData().add(new XYChart.Data("1000000", 22));
            series2.getData().add(new XYChart.Data("1200000", 86));

            Scene scene  = new Scene(bc  ,1800,1000);

            scene.setFill(null);
            bc.setAnimated(false);
            bc.getData().addAll(series1,series2);

            stage.setScene(scene);
            stage.show();

        }
    }

结果如下:

enter image description here

正如你所看到的,第二个系列在条形图中没有很好地展示,所以有一个第二个y轴有自己的比例,在条形图中显示得更好。

这在JavaFx中是否可行?

0 个答案:

没有答案