2017-02-23 69 views
0

我对图LineChart JavaFX有一个好奇的问题。LineChart FX - 删除实线

我有这样的曲线图: Grapg 点上形成X轴的“跳跃”(如图所示由两个红色点I得分),因此JavaFX的吸引我这两点之间的连线。如何删除每个“跳跃”之间的那条线?

我张贴代码:

public class ControllerIndividua { 

    public static void plotIndividuaFull(String path, Stage stage, String name) { 
     final NumberAxis xAxisIntensity = new NumberAxis(); //Dichiarazione asseX 
     final NumberAxis yAxisIntensity = new NumberAxis();//Dichiarazione asseY 

     DetectionS1.countS1(); 

     //Dichiarazione del tipo di grafico 
     final LineChart<Number, Number> lineChartIntensity = new LineChart<Number, Number>(xAxisIntensity,yAxisIntensity); 

     ArrayList<Double> extractedData; //Lista dei valori dello dell' intensità 
     ArrayList<Double> extractedTime; //Lista del tempo 
     ArrayList<Double> extractedS1; //Lista del tempo 
     ArrayList<Double> extractedS1Time; //Lista del tempo 

     //Gestione e settaggio del grafico 
     lineChartIntensity.getData().clear(); 

     try { 
      //Popolamento delle liste 
      extractedTime = IntensityExtractor.pointsTime(); 
      extractedData = IntensityExtractor.pointsIntensity(); 
      extractedS1 = DetectionS1.S1pitch(); 
      extractedS1Time = DetectionS1.pointsS1Time(); 
      XYChart.Series<Number, Number> series = new XYChart.Series<Number, Number>(); 
      XYChart.Series<Number, Number> seriesS1 = new XYChart.Series<Number, Number>(); //Creazione seconda serie 
      series.setName("Intensità di:\t" + name.toUpperCase()); 

      for (int j = 0; j < extractedS1.size(); j++) { 
       seriesS1.getData().add(new XYChart.Data<Number, Number>(extractedS1Time.get(j), extractedS1.get(j))); 
       lineChartIntensity.getStyleClass().add("CSSintensity"); 
      } 

      //Creazione finestra e stampa del grafico 
      Scene scene = new Scene(lineChartIntensity, 1000, 600); 
      lineChartIntensity.getData().addAll(series,seriesS1); 
      scene.getStylesheets().add("application/application.css"); 
      stage.setScene(scene); 
      stage.show(); 
     } catch (java.lang.Exception e) { 
      e.printStackTrace(); 
     } 
    } 
} 

有人还对我怎么可能做一些想法?

谢谢大家提前。

+2

我知道这行是Node。您可以在系列中搜索和查找此节点并设置可见性。 另一个想法是打印每个新系列的跳跃。但是管理起来可能更困难,也可能效率不高。只是我的想法:) – BadVegan

+0

谢谢......我可以使用CSS仅用于该节点之间的线?如果是,我该怎么办?我怀疑是 –

回答

1

我检查了它。这是不可能只改变这一行的一部分。因为这是一个很长的路径,所以你不能改变Path的一个元素。

我认为唯一的方法是在不同的系列中添加每个“跳跃”。

+0

...谢谢! –