diff --git a/src/main/java/seng202/group9/GUI/AirlineGraphController.java b/src/main/java/seng202/group9/GUI/AirlineGraphController.java index c9f06f2..2b88585 100644 --- a/src/main/java/seng202/group9/GUI/AirlineGraphController.java +++ b/src/main/java/seng202/group9/GUI/AirlineGraphController.java @@ -19,7 +19,7 @@ import java.util.*; import static javafx.application.ConditionalFeature.FXML; /** - * Created by Gondr on 2/10/2016. + * Created by fwy13 on 2/10/2016. */ public class AirlineGraphController extends Controller{ private Dataset dataset; diff --git a/src/main/java/seng202/group9/GUI/AirportGraphController.java b/src/main/java/seng202/group9/GUI/AirportGraphController.java index 7a0f72c..4b8dbb7 100644 --- a/src/main/java/seng202/group9/GUI/AirportGraphController.java +++ b/src/main/java/seng202/group9/GUI/AirportGraphController.java @@ -20,7 +20,7 @@ import java.util.HashMap; import java.util.LinkedHashMap; /** - * Created by Gondr on 2/10/2016. + * Created by fwy13 on 2/10/2016. */ public class AirportGraphController extends Controller{ private Dataset dataset; diff --git a/src/main/java/seng202/group9/GUI/RouteGraphController.java b/src/main/java/seng202/group9/GUI/RouteGraphController.java index 5eeaca1..e4710d1 100644 --- a/src/main/java/seng202/group9/GUI/RouteGraphController.java +++ b/src/main/java/seng202/group9/GUI/RouteGraphController.java @@ -11,6 +11,7 @@ import javafx.scene.layout.VBox; import seng202.group9.Controller.Dataset; import seng202.group9.Controller.SceneCode; import seng202.group9.Controller.Session; +import seng202.group9.Core.Airline; import seng202.group9.Core.Airport; import seng202.group9.Core.Route; @@ -20,7 +21,7 @@ import java.util.HashMap; import java.util.LinkedHashMap; /** - * Created by Gondr on 2/10/2016. + * Created by fwy13 on 2/10/2016. */ public class RouteGraphController extends Controller{ private Dataset dataset; @@ -92,6 +93,7 @@ public class RouteGraphController extends Controller{ loadSourceGraph(); loadInCountryGraph(); loadOutCountryGraph(); + loadEquipGraph(); } public void loadAirlineGraph(){ @@ -288,6 +290,43 @@ public class RouteGraphController extends Controller{ outCountryGraph.getData().add(series); } + public void loadEquipGraph(){ + equipGraph.setTitle("Top 10 Equipment used by Routes"); + equipXAxis.setLabel("Equipment"); + XYChart.Series series = new XYChart.Series<>(); + series.setName("Number of Equipment"); + HashMap equipmentList = new HashMap<>();//equipment, count + for (Route route: routesFiltered){ + String equipment[] = route.getEquipment().split(" "); + for (String equip : equipment){ + if (equipmentList.containsKey(equip)){ + equipmentList.put(equip, equipmentList.get(equip) + 1); + }else{ + equipmentList.put(equip, 1); + } + } + } + + int length = 10; + if (equipmentList.size() < 10){ + length = equipmentList.size(); + } + for (int i = 0 ; i < length; i ++) { + int max = 0; + String maxEquip = ""; + for (String equip: equipmentList.keySet()){ + if (equipmentList.get(equip) > max){ + max = equipmentList.get(equip); + maxEquip = equip; + } + } + series.getData().add(new XYChart.Data(maxEquip, max)); + equipmentList.remove(maxEquip); + } + + equipGraph.getData().add(series); + } + public void goToRawData(){ replaceSceneContent(SceneCode.ROUTE_RAW_DATA); }