Гистограмма не показывает правильно - PullRequest
0 голосов
/ 22 октября 2019

Здравствуйте, у меня есть Barchart в JavaFx, Data Show прекрасно работает, когда непосредственно загружается в метод инициализации, но когда я загружаю MouseEvent, метка Date не отображается правильно. Я поставил здесь свернутый пример.

это мой код в IncidentesController

    @FXML private ComboBox<String> solicitudindc;
          @FXML private JFXButton generarind;
          @FXML private BarChart <String,Integer> indicadorsoporte;
          @FXML private  CategoryAxis fechas;
          @FXML private NumberAxis cantidades;


            public void generaindicador() {
            String Bd="jdbc:sqlserver://DESKTOP- 
            8PJDQNJ:1433;databaseName=QUORA";
            String Usuario="myuser";
            String Pass="mypass";
            String Query= "SELECT FECHA_EJECUTADA ,  COUNT(PRIORIDAD) AS CANTIDAD FROM RINCIDENTES WHERE PRIORIDAD='ALTA' GROUP BY FECHA_EJECUTADA ORDER BY FECHA_EJECUTADA ASC"; 
            String Query2= "SELECT FECHA_EJECUTADA ,  COUNT(PRIORIDAD) AS CANTIDAD FROM RINCIDENTES WHERE PRIORIDAD='MEDIA' GROUP BY FECHA_EJECUTADA ORDER BY FECHA_EJECUTADA ASC"; 
            XYChart.Series<String,Integer> DatosPrioridad = new Series<String,Integer> ();
            XYChart.Series<String,Integer> DatosPrioridad2 = new Series<String,Integer> ();

            Connection Conexiontabla = null;
            try {
                 ............conection code...........
                while (rs.next()) {
                    String y=rs.getString("FECHA_EJECUTADA");
                    int a=rs.getInt("CANTIDAD");
                    DatosPrioridad.getData().add(new XYChart.Data<>(y,a) );
                }
                indicadorsoporte.getData().add(DatosPrioridad);
                DatosPrioridad.setName("PRIORIDAD ALTA");
               }catch(SQLException e) {
                e.printStackTrace();
               }


             try {
               ............conection code...........
                while (rss.next()) {
                    String x=rss.getString("FECHA_EJECUTADA");
                    int z=rss.getInt("CANTIDAD");
                    DatosPrioridad2.getData().add(new XYChart.Data<>(x,z) );

                }
                indicadorsoporte.getData().add(DatosPrioridad2);
                DatosPrioridad2.setName("PRIORIDAD MEDIA");
                fechas.setLabel("Fechas");
                cantidades.setLabel("Cantidades");
            }catch(SQLException e) {
                e.printStackTrace();
            }
      }

Если в поле со списком есть значение "REPORTE DE INCIDENTES", я загружаю диаграмму следующим образом:

public void generaincidentes() {
     generarind.setOnMouseClicked(e->{
          if(solicitudindc.getSelectionModel().getSelectedItem().toString().equals("REPORTE DE INCIDENTES")) {
              generaindicador();
          }
          });  
  }

это изображения:

при загрузке непосредственно в методе инициализации: enter image description here

при выборе опции в выпадающем списке для загрузкиГрафик: enter image description here

Любое руководство?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...