2015-12-28 185 views
-1

enter image description hereJavaFX的圖表工作不

我使用JavaFX圖表爲我的項目和運行我的程序後,我得到這個圖表。我想讓它先抓住第三點然後抓到第四點。有沒有辦法做到這一點。謝謝

+0

來吧......你應該更加努力地提出問題。如果你會看到這個問題,你是否會有機會在這個問題上回答這個問題? –

+0

對不起隊友,這是我在StackOverflow上的第一個問題。我現在試圖清除我的問題。希望現在我可以得到答案 –

+0

使用不同類型的圖表來顯示您的數據。 PieChart也許? – Sedrick

回答

0

我很確定你使用的'AreaChart'單調繪製數據。因此,無論點數添加到系列中的順序如何,圖表都會將它們繪製爲單調。

注意:單調意味着對於每個x值,都有一個y值。

如果你想打破你的情節的'單調性',並且你願意放棄陰影區域,你可以將它構造成一個lineChart,然後你需要改變你的排序策略。我附上了一個示例以向您展示如何解決這個問題。

import javafx.application.Application; 
import javafx.scene.Scene; 
import javafx.scene.chart.LineChart; 
import javafx.scene.chart.NumberAxis; 
import javafx.scene.chart.XYChart; 
import javafx.scene.layout.Pane; 
import javafx.stage.Stage; 

public class Main extends Application { 
@Override 
public void start(Stage primaryStage) throws Exception{ 
    Pane root = new Pane(); 

    NumberAxis xAxis = new NumberAxis(); 
    NumberAxis yAxis = new NumberAxis(); 

    LineChart chart = new LineChart(xAxis,yAxis); 

    XYChart.Series series = new XYChart.Series(); 

    chart.getData().add(series); 
    chart.setAxisSortingPolicy(LineChart.SortingPolicy.NONE); 

    series.getData().add(new XYChart.Data(0,1)); 
    series.getData().add(new XYChart.Data(1,2)); 
    series.getData().add(new XYChart.Data(2,1)); 
    series.getData().add(new XYChart.Data(1,0)); 

    root.getChildren().add(chart); 

    primaryStage.setTitle("Hello World"); 
    primaryStage.setScene(new Scene(root)); 
    primaryStage.show(); 
} 


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

不幸的是,如果你正在尋找這兩個,這將回落到其具有通過從XYChart或者甚至AreaChart延伸並限定自己的自定義AreaChart建立自己的圖表類。

+0

另外還有一個註釋... 排序是枚舉的,因此您可以按X軸,Y軸或無 – Deezee