2012-04-06 34 views
5

enter image description heretrục Y dao động trong XYChart

enter image description here

Tôi có một vấn đề mở rộng quy mô với XYChart âm mưu: dữ liệu của tôi serie dãy các giá trị float từ 0,4 và 0,5 và khi vẽ trên một cảnh tôi nhận được giá trị Y như tối thiểu 1, vì vậy tôi không thể nhìn thấy bất cứ điều gì được vẽ.

Vấn đề này không xảy ra nếu tôi sử dụng dữ liệu serie với giá trị cao hơn như> 100

Làm thế nào tôi có thể thiết lập trục y theo dữ liệu giá trị serie sử dụng?

Cảm ơn

Trả lời

5

Như đã nêu trong javadoc cho NumberAxis constructor: public NumberAxis(double lowerBound, double upperBound, double tickUnit) - bạn có thể cung cấp dưới và cận dưới cho trục của bạn.

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); 

Cập nhật: Autoranging của biểu đồ làm việc cho tôi là tốt, xem mã tiếp theo và ảnh chụp màn hình. Bạn có thể muốn nâng cấp lên JavaFX 2.1 hoặc mới hơn.

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); 

linechart

+0

Cảm ơn bạn Sergey trả lời của các bạn: những gì tôi muốn thực hiện là để tự động thiết lập phạm vi Y của tôi theo tập hợp dữ liệu, tức là tôi không muốn thiết lập Y axys mỗi khi tôi thay đổi tập dữ liệu. Ví dụ, tôi sử dụng một tập dữ liệu từ 0,4 đến 0,5 cốt truyện của tôi sẽ hiển thị tối thiểu và tối đa trong các giá trị này (nhưng% cố định, 2%, cho không gian tối thiểu và tối đa trên Y), và điều tương tự cũng nên làm nếu Tôi sử dụng tập dữ liệu từ 100 đến 1500 –

+0

Tôi đã cập nhật câu trả lời, vui lòng xem. –

+0

Rất tốt cảm ơn rất nhiều Tôi đã tìm kiếm câu trả lời này thời gian dài :) –

Các vấn đề liên quan