XYChartプロットでスケーリングの問題があります。データシリーズの範囲はフロート値で0.4から0.5であり、シーンにプロットすると最小Y値1になるため、プロットされたものが何も表示されません。
100を超えるなど、より高い値のデータ系列を使用する場合、この問題は発生しません。
使用するデータシリーズの値に応じてy軸を設定するにはどうすればよいですか?
ありがとう
XYChartプロットでスケーリングの問題があります。データシリーズの範囲はフロート値で0.4から0.5であり、シーンにプロットすると最小Y値1になるため、プロットされたものが何も表示されません。
100を超えるなど、より高い値のデータ系列を使用する場合、この問題は発生しません。
使用するデータシリーズの値に応じてy軸を設定するにはどうすればよいですか?
ありがとう
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);