private BarChart createBarChart() { CategoryAxis xAxis = new CategoryAxis(); xAxis.setCategories(FXCollections.<String>observableArrayList(tableModel.getColumnNames())); xAxis.setLabel("Year"); double tickUnit = tableModel.getTickUnit(); NumberAxis yAxis = new NumberAxis(); yAxis.setTickUnit(tickUnit); yAxis.setLabel("Units Sold"); final BarChart chart = new BarChart(xAxis, yAxis, tableModel.getBarChartData()); tableModel.addTableModelListener(new TableModelListener() { public void tableChanged(TableModelEvent e) { if (e.getType() == TableModelEvent.UPDATE) { final int row = e.getFirstRow(); final int column = e.getColumn(); final Object value = ((SampleTableModel) e.getSource()).getValueAt(row, column); Platform.runLater(new Runnable() { public void run() { XYChart.Series<String, Number> s = (XYChart.Series<String, Number>) chart.getData().get(row); BarChart.Data data = s.getData().get(column); data.setYValue(value); } }); } } }); return chart; }
public BarChartSample() { String[] years = {"2007", "2008", "2009"}; CategoryAxis xAxis = new CategoryAxis(); xAxis.setCategories(FXCollections.<String>observableArrayList(years)); NumberAxis yAxis = new NumberAxis("Units Sold", 0.0d, 3000.0d, 1000.0d); ObservableList<BarChart.Series> barChartData = FXCollections.observableArrayList( new BarChart.Series("Apples", FXCollections.observableArrayList( new BarChart.Data(years[0], 567d), new BarChart.Data(years[1], 1292d), new BarChart.Data(years[2], 1292d) )), new BarChart.Series("Lemons", FXCollections.observableArrayList( new BarChart.Data(years[0], 956), new BarChart.Data(years[1], 1665), new BarChart.Data(years[2], 2559) )), new BarChart.Series("Oranges", FXCollections.observableArrayList( new BarChart.Data(years[0], 1154), new BarChart.Data(years[1], 1927), new BarChart.Data(years[2], 2774) )) ); BarChart chart = new BarChart(xAxis, yAxis, barChartData, 25.0d); getChildren().add(chart); }
public ImageBarChartSample() { String imageBarChartCss = ImageBarChartSample.class.getResource("ImageBarChart.css").toExternalForm(); BarChart barChart = new BarChart(new CategoryAxis(), new NumberAxis()); barChart.setLegendVisible(false); barChart.getStylesheets().add(imageBarChartCss); barChart.getData().add( new XYChart.Series<String, Integer>("Sales Per Product", FXCollections.observableArrayList( new XYChart.Data<String, Integer>("SUV", 120), new XYChart.Data<String, Integer>("Sedan", 50), new XYChart.Data<String, Integer>("Truck", 180), new XYChart.Data<String, Integer>("Van", 20)))); Scene scene = new Scene(barChart, 350, 300); scene.getStylesheets().add(ImageBarChartSample.class.getResource("ImageBarChart.css").toString()); getChildren().add(barChart); }
public static BarChart<String, Number> chart(String title, CategoryColumn categoryColumn, NumericColumn numericColumn) { final CategoryAxis categoryAxis = getCategoryAxis(categoryColumn); final NumberAxis numberAxis = getNumberAxis(numericColumn); final BarChart<String, Number> barChart = getBarChart(title, categoryAxis, numberAxis); List<XYChart.Data<String, Number>> data = new ArrayList<>(categoryColumn.size()); for (int i = 0; i < categoryColumn.size(); i++) { data.add(new XYChart.Data<>(categoryColumn.get(i), numericColumn.getFloat(i))); } barChart.getData().add(getSeries(numericColumn, data)); return barChart; }
public static BarChart<String, Number> chart(String title, ShortColumn categoryColumn, NumericColumn numericColumn) { final CategoryAxis categoryAxis = getCategoryAxis(categoryColumn); final NumberAxis numberAxis = getNumberAxis(numericColumn); final BarChart<String, Number> barChart = getBarChart(title, categoryAxis, numberAxis); List<XYChart.Data<String, Number>> data = new ArrayList<>(categoryColumn.size()); for (int i = 0; i < categoryColumn.size(); i++) { data.add(new XYChart.Data<>(categoryColumn.getString(i), numericColumn.getFloat(i))); } barChart.getData().add(getSeries(numericColumn, data)); return barChart; }
public static BarChart<Number, String> chart(String title, CategoryColumn categoryColumn, NumericColumn numericColumn) { final CategoryAxis categoryAxis = getCategoryAxis(categoryColumn); final NumberAxis numberAxis = getNumberAxis(numericColumn); final BarChart<Number, String> bar = getNumberStringBarChart(title, numberAxis, categoryAxis); List<XYChart.Data<Number, String>> d2 = new ArrayList<>(numericColumn.size()); for (int i = 0; i < numericColumn.size(); i++) { d2.add(new XYChart.Data<>(numericColumn.getFloat(i), categoryColumn.get(i))); } XYChart.Series<Number, String> series1 = getNumberStringSeries(categoryColumn, d2); bar.getData().add(series1); return bar; }
public static BarChart<Number, String> chart(String title, ShortColumn categoryColumn, NumericColumn numericColumn) { final CategoryAxis categoryAxis = getCategoryAxis(categoryColumn); final NumberAxis numberAxis = getNumberAxis(numericColumn); final BarChart<Number, String> bar = getNumberStringBarChart(title, numberAxis, categoryAxis); List<XYChart.Data<Number, String>> d2 = new ArrayList<>(numericColumn.size()); for (int i = 0; i < numericColumn.size(); i++) { d2.add(new XYChart.Data<>(numericColumn.getFloat(i), categoryColumn.getString(i))); } XYChart.Series<Number, String> series1 = getNumberStringSeries(categoryColumn, d2); bar.getData().add(series1); return bar; }
public static BarChart<Number, String> chart(String title, IntColumn categoryColumn, NumericColumn numericColumn) { final CategoryAxis categoryAxis = getCategoryAxis(categoryColumn); final NumberAxis numberAxis = getNumberAxis(numericColumn); final BarChart<Number, String> bar = getNumberStringBarChart(title, numberAxis, categoryAxis); List<XYChart.Data<Number, String>> d2 = new ArrayList<>(numericColumn.size()); for (int i = 0; i < numericColumn.size(); i++) { d2.add(new XYChart.Data<>(numericColumn.getFloat(i), categoryColumn.getString(i))); } XYChart.Series<Number, String> series1 = getNumberStringSeries(categoryColumn, d2); bar.getData().add(series1); return bar; }
public static BarChart<String, Number> chart(String title, IntColumn categoryColumn, NumericColumn numericColumn) { Table t = Table.create("", categoryColumn, numericColumn); t = t.sortDescendingOn(numericColumn.name()); final CategoryAxis categoryAxis = getCategoryAxis(t.categoryColumn(0)); final NumberAxis numberAxis = getNumberAxis(t.numericColumn(1)); final BarChart<String, Number> barChart = getBarChart(title, categoryAxis, numberAxis); List<XYChart.Data<String, Number>> data = new ArrayList<>(categoryColumn.size()); for (int i = 0; i < categoryColumn.size(); i++) { data.add(new XYChart.Data<>(categoryColumn.getString(i), numericColumn.getFloat(i))); } barChart.getData().add(getSeries(numericColumn, data)); return barChart; }
public static BarChart<String, Number> chart(String title, ShortColumn categoryColumn, NumericColumn numericColumn) { Table t = Table.create("", categoryColumn, numericColumn); t = t.sortDescendingOn(numericColumn.name()); final CategoryAxis categoryAxis = getCategoryAxis(t.categoryColumn(0)); final NumberAxis numberAxis = getNumberAxis(t.numericColumn(1)); final BarChart<String, Number> barChart = getBarChart(title, categoryAxis, numberAxis); List<XYChart.Data<String, Number>> data = new ArrayList<>(categoryColumn.size()); for (int i = 0; i < categoryColumn.size(); i++) { data.add(new XYChart.Data<>(categoryColumn.getString(i), numericColumn.getFloat(i))); } barChart.getData().add(getSeries(numericColumn, data)); return barChart; }
private Region buildDistortionHistograms() { this.sizeChart = new BarChart<String, Number>(new CategoryAxis(), new NumberAxis()); this.sizeChart.setPrefWidth(CHART_WIDTH); this.sizeChart.setPrefHeight(IMG_WIDTH/2); this.sizeChart.getXAxis().setLabel("Scale factor"); this.sizeChart.setBarGap(0); this.sizeChart.setCategoryGap(0); this.sizeChart.setAnimated(false); this.sizeChart.setLegendVisible(false); this.shapeChart = new BarChart<String, Number>(new CategoryAxis(), new NumberAxis()); this.shapeChart.setPrefWidth(CHART_WIDTH); this.shapeChart.setPrefHeight(IMG_WIDTH/2); this.shapeChart.getXAxis().setLabel("Stretch factor"); this.shapeChart.setBarGap(0); this.shapeChart.setCategoryGap(0); this.shapeChart.setAnimated(false); this.shapeChart.setLegendVisible(false); return new VBox(5, sizeChart, shapeChart); }
private void handleFirstLoginsChart() throws IOException, InterruptedException, ExecutionException { FutureRequest<LinkedHashMap<LocalDateTime, Integer>> requestResult = sock.submit(new NewPlayerLoginsRequest( startDatePicker.getValue(), endDatePicker.getValue().plusDays(1) )); LinkedHashMap<LocalDateTime, Integer> counts = requestResult.get(); XYChart.Series<String, Number> series = new XYChart.Series<>(); for(Map.Entry<LocalDateTime, Integer> e : counts.entrySet()) { series.getData().add(new XYChart.Data(e.getKey().toString(), e.getValue())); } series.setName("New Players"); final CategoryAxis xAxis = new CategoryAxis(); final NumberAxis yAxis = new NumberAxis(); xAxis.setLabel("Time Joined"); yAxis.setLabel("Players Joined"); yAxis.setTickLength(5); yAxis.setMinorTickLength(1); xAxis.setAutoRanging(true); final BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis); barChart.setTitle("New Players"); barChart.getData().add(series); chartPane.setCenter(barChart); chartPane.layout(); }
public BarChart<String, Number> getBarChart() { BarChart<String, Number> barChart = new BarChart<String, Number>(xAxis, yAxis); barChart.setTitle(chartTitle()); barChart.setLegendVisible(false); yAxis.setLabel(barChartYAxisLabel()); xAxis.setLabel(barChartXAxisLabel()); barChart.getData().add(barChartData()); return barChart; }
public void simpleBarChartByCountry(Stage stage) { stage.setTitle("Bar Chart"); final BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis); barChart.setTitle("Country Summary"); xAxis.setLabel("Country"); yAxis.setLabel("Population"); series1.setName("1950"); addDataItem(series1, belgium, 8639369); addDataItem(series1, france, 42518000); addDataItem(series1, germany, 68374572); addDataItem(series1, netherlands, 10113527); addDataItem(series1, sweden, 7014005); addDataItem(series1, unitedKingdom, 50127000); series2.setName("1960"); addDataItem(series2, belgium, 9118700); addDataItem(series2, france, 46584000); addDataItem(series2, germany, 72480869); addDataItem(series2, netherlands, 11486000); addDataItem(series2, sweden, 7480395); addDataItem(series2, unitedKingdom, 52372000); series3.setName("1970"); addDataItem(series3, belgium, 9637800); addDataItem(series3, france, 51918000); addDataItem(series3, germany, 77783164); addDataItem(series3, netherlands, 13032335); addDataItem(series3, sweden, 8042803); addDataItem(series3, unitedKingdom, 55632000); Scene scene = new Scene(barChart, 800, 600); barChart.getData().addAll(series1, series2, series3); stage.setScene(scene); stage.show(); }
public ObservableList<BarChart.Series> getBarChartData() { if (bcData == null) { bcData = FXCollections.<BarChart.Series>observableArrayList(); for (int row = 0; row < getRowCount(); row++) { ObservableList<BarChart.Data> series = FXCollections.<BarChart.Data>observableArrayList(); for (int column = 0; column < getColumnCount(); column++) { series.add(new BarChart.Data(getColumnName(column), getValueAt(row, column))); } bcData.add(new BarChart.Series(series)); } } return bcData; }
protected BarChart<String, Number> createChart() { final String[] years = {"2007", "2008", "2009"}; final CategoryAxis xAxis = new CategoryAxis(); final NumberAxis yAxis = new NumberAxis(); yAxis.setTickLabelFormatter(new NumberAxis.DefaultFormatter(yAxis,"$",null)); final BarChart<String,Number> bc = new BarChart<String,Number>(xAxis,yAxis); // setup chart bc.setTitle("Advanced Bar Chart"); xAxis.setLabel("Year"); xAxis.setCategories(FXCollections.<String>observableArrayList(Arrays.asList(years))); yAxis.setLabel("Price"); // add starting data XYChart.Series<String,Number> series1 = new XYChart.Series<String,Number>(); series1.setName("Data Series 1"); XYChart.Series<String,Number> series2 = new XYChart.Series<String,Number>(); series2.setName("Data Series 2"); XYChart.Series<String,Number> series3 = new XYChart.Series<String,Number>(); series3.setName("Data Series 3"); // create sample data series1.getData().add(new XYChart.Data<String,Number>(years[0], 567)); series1.getData().add(new XYChart.Data<String,Number>(years[1], 1292)); series1.getData().add(new XYChart.Data<String,Number>(years[2], 2180)); series2.getData().add(new XYChart.Data<String,Number>(years[0], 956)); series2.getData().add(new XYChart.Data<String,Number>(years[1], 1665)); series2.getData().add(new XYChart.Data<String,Number>(years[2], 2450)); series3.getData().add(new XYChart.Data<String,Number>(years[0], 800)); series3.getData().add(new XYChart.Data<String,Number>(years[1], 1000)); series3.getData().add(new XYChart.Data<String,Number>(years[2], 2800)); bc.getData().add(series1); bc.getData().add(series2); bc.getData().add(series3); return bc; }
protected BarChart<String, Number> createChart() { final CategoryAxis xAxis = new CategoryAxis(); final NumberAxis yAxis = new NumberAxis(0,50,10); final BarChart<String,Number> bc = new BarChart<String,Number>(xAxis,yAxis); bc.setId("barAudioDemo"); bc.setLegendVisible(false); bc.setAnimated(false); bc.setBarGap(0); bc.setCategoryGap(1); bc.setVerticalGridLinesVisible(false); // setup chart bc.setTitle("Live Audio Spectrum Data"); xAxis.setLabel("Frequency Bands"); yAxis.setLabel("Magnitudes"); yAxis.setTickLabelFormatter(new NumberAxis.DefaultFormatter(yAxis,null,"dB")); // add starting data XYChart.Series<String,Number> series1 = new XYChart.Series<String,Number>(); series1.setName("Data Series 1"); //noinspection unchecked series1Data = new XYChart.Data[128]; String[] categories = new String[128]; for (int i=0; i<series1Data.length; i++) { categories[i] = Integer.toString(i+1); series1Data[i] = new XYChart.Data<String,Number>(categories[i],50); series1.getData().add(series1Data[i]); } bc.getData().add(series1); return bc; }
protected BarChart<Number, String> createChart() { final String[] years = {"2007", "2008", "2009"}; final CategoryAxis yAxis = new CategoryAxis(); final NumberAxis xAxis = new NumberAxis(); final BarChart<Number,String> bc = new BarChart<Number,String>(xAxis,yAxis); // setup chart bc.setTitle("Horizontal Bar Chart Example"); yAxis.setLabel("Year"); yAxis.setCategories(FXCollections.<String>observableArrayList(Arrays.asList(years))); xAxis.setLabel("Price"); // add starting data XYChart.Series<Number,String> series1 = new XYChart.Series<Number,String>(); series1.setName("Data Series 1"); XYChart.Series<Number,String> series2 = new XYChart.Series<Number,String>(); series2.setName("Data Series 2"); XYChart.Series<Number,String> series3 = new XYChart.Series<Number,String>(); series3.setName("Data Series 3"); series1.getData().add(new XYChart.Data<Number,String>(567, years[0])); series1.getData().add(new XYChart.Data<Number,String>(1292, years[1])); series1.getData().add(new XYChart.Data<Number,String>(2180, years[2])); series2.getData().add(new XYChart.Data<Number,String>(956, years[0])); series2.getData().add(new XYChart.Data<Number,String>(1665, years[1])); series2.getData().add(new XYChart.Data<Number,String>(2450, years[2])); series3.getData().add(new XYChart.Data<Number,String>(800, years[0])); series3.getData().add(new XYChart.Data<Number,String>(1000, years[1])); series3.getData().add(new XYChart.Data<Number,String>(2800, years[2])); bc.getData().add(series1); bc.getData().add(series2); bc.getData().add(series3); return bc; }
public void simpleBarChartByYear(Stage stage) { stage.setTitle("Bar Chart"); final BarChart<String, Number> barChart = new BarChart<>(xAxis, yAxis); barChart.setTitle("Year Summary"); xAxis.setLabel("Year"); yAxis.setLabel("Population"); String year1950 = "1950"; String year1960 = "1960"; String year1970 = "1970"; series1.setName(belgium); addDataItem(series1, year1950, 8639369); addDataItem(series1, year1960, 9118700); addDataItem(series1, year1970, 9637800); series2.setName(france); addDataItem(series2, year1950, 42518000); addDataItem(series2, year1960, 46584000); addDataItem(series2, year1970, 51918000); series3.setName(germany); addDataItem(series3, year1950, 68374572); addDataItem(series3, year1960, 72480869); addDataItem(series3, year1970, 77783164); series4.setName(netherlands); addDataItem(series4, year1950, 10113527); addDataItem(series4, year1960, 11486000); addDataItem(series4, year1970, 13032335); series5.setName(sweden); addDataItem(series5, year1950, 7014005); addDataItem(series5, year1960, 7480395); addDataItem(series5, year1970, 8042803); series6.setName(unitedKingdom); addDataItem(series6, year1950, 50127000); addDataItem(series6, year1960, 52372000); addDataItem(series6, year1970, 55632000); Scene scene = new Scene(barChart, 800, 600); barChart.getData().addAll(series1, series2, series3, series4, series5, series6); stage.setScene(scene); stage.show(); }