5

ここに画像の説明を入力してください

ここに画像の説明を入力してください

XYChartプロットでスケーリングの問題があります。データシリーズの範囲はフロート値で0.4から0.5であり、シーンにプロットすると最小Y値1になるため、プロットされたものが何も表示されません。

100を超えるなど、より高い値のデータ系列を使用する場合、この問題は発生しません。

使用するデータシリーズの値に応じてy軸を設定するにはどうすればよいですか?

ありがとう

4

1 に答える 1

5

JavaDoc for NumberAxisコンストラクターで述べられているように:public NumberAxis(double lowerBound, double upperBound, double tickUnit)-軸の下限と下限を指定できます。

    NumberAxis xAxis = new NumberAxis("X-Axis", 0d, 1d, .05);
    NumberAxis yAxis = new NumberAxis("Y-Axis", 0d, 1d, .05);
    ObservableList<XYChart.Series> data = FXCollections.observableArrayList(
            new ScatterChart.Series("Series 1", FXCollections.<ScatterChart.Data>observableArrayList(
            new XYChart.Data(.1, .1),
            new XYChart.Data(.2, .2))));
    ScatterChart chart = new ScatterChart(xAxis, yAxis, data);
    root.getChildren().add(chart);

更新:チャートの自動調整は私にも機能します。次のコードとスクリーンショットを参照してください。JavaFX2.1以降にアップグレードすることをお勧めします。

    NumberAxis xAxis = new NumberAxis();
    NumberAxis yAxis = new NumberAxis();
    ObservableList<XYChart.Series> data = FXCollections.observableArrayList(
            new ScatterChart.Series("Series 1", FXCollections.<ScatterChart.Data>observableArrayList(
            new XYChart.Data(.01, .1),
            new XYChart.Data(.1, .11),
            new XYChart.Data(.12, .12),
            new XYChart.Data(.18, .15),
            new XYChart.Data(.2, .2))));
    XYChart chart = new LineChart(xAxis, yAxis, data);
    root.getChildren().add(chart);

折れ線グラフ

于 2012-04-06T10:32:39.277 に答える