Ściganie anomalii w danych jest żmudne, ale JFreeChart
może przynajmniej ułatwić wizualizację wyniku. Niektóre heurystyki do testowania:
-
Aby sprawdzić, czy domniemane duplikaty na liście tabelarycznej są rzeczywiście duplikatami, sformatuj znaczniki czasu tak, aby zawierały milisekundy, np. dodaj
S
doSimpleDateFormat
lubA
doDateTimeFormatter
. -
Na potrzeby nauki tymczasowo przekaż zapytanie bezpośrednio do
JDBCXYDataset
i dodajORDER BY
klauzula (niesprawdzona):jds.executeQuery( "SELECT Date_Heure, PV, SV FROM cmd3 " + "WHERE Date_Heure BETWEEN " + "2020-06-25 00:00:00 AND 2020-06-26 00:00:00 " + "ORDER BY Date_Heure");
-
Włącz podpowiedzi w swoim
ChartFactory
, tak jak zrobiłeś tutaj , aby zobaczyć wartości danych in situ . Może to sugerować dodatkowe warunki dla TwojegoWHERE
klauzula, np.PV POMIĘDZY 5.1 A 5.9
. -
Użyj interaktywnego
JFreeChart
Sterowanie panoramowaniem/zoomem, omówione tutaj zbadać dane; dodaj odpowiednie przyciski, pokazane tutaj , jeśli ułatwi to współpracownikom zapoznanie się z Twoimi ustaleniami. -
Zgodnie z projektem
JDBCXYDataset
wykonuje zapytanie zdefiniowane przezString
. Jeśli Twój projekt musi wyświetlać dane z zapytania zdefiniowanego przezPreparedStatement
, możesz użyć istniejącego implementacja jako przewodnik.public class PreparedDataset extends AbstractXYDataset implements XYDataset, TableXYDataset, RangeInfo { private final PreparedStatement ps; public PreparedDataset(PreparedStatement ps) { this.ps = ps; } … }