List of usage examples for org.jfree.data.xy MatrixSeries update
public void update(int i, int j, double mij)
From source file:msi.gama.outputs.layers.charts.ChartJFreeChartOutputHeatmap.java
@Override protected void resetSerie(final IScope scope, final String serieid) { // TODO Auto-generated method stub this.createNewSerie(scope, serieid); final ChartDataSeries dataserie = chartdataset.getDataSeries(scope, serieid); final MatrixSeries serie = ((MatrixSeriesCollection) jfreedataset .get(IdPosition.get(dataserie.getSerieId(scope)))).getSeries(0); final ArrayList<Double> XValues = dataserie.getXValues(scope); final ArrayList<Double> YValues = dataserie.getYValues(scope); final ArrayList<Double> SValues = dataserie.getSValues(scope); final NumberAxis domainAxis = (NumberAxis) ((XYPlot) this.chart.getPlot()).getDomainAxis(); if (XValues.size() == 0) { if (!usexrangeinterval && !usexrangeminmax) { domainAxis.setAutoRange(false); domainAxis.setRange(-0.5, XValues.size() + 0.5); }//from w w w .jav a2 s .c om } final NumberAxis rangeAxis = (NumberAxis) ((XYPlot) this.chart.getPlot()).getRangeAxis(); if (YValues.size() == 0) { if (!useyrangeinterval && !useyrangeminmax) { rangeAxis.setAutoRange(false); rangeAxis.setRange(-0.5, YValues.size() + 0.5); } } // final NumberAxis domainAxis = (NumberAxis) ((XYPlot) this.chart.getPlot()).getDomainAxis(); // final NumberAxis rangeAxis = (NumberAxis) ((XYPlot) this.chart.getPlot()).getRangeAxis(); if (XValues.size() > 0) { domainAxis.setAutoRange(false); rangeAxis.setAutoRange(false); domainAxis.setTickLabelsVisible(this.getXTickValueVisible(scope)); domainAxis.setTickMarksVisible(this.getXTickValueVisible(scope)); rangeAxis.setTickLabelsVisible(this.getYTickValueVisible(scope)); rangeAxis.setTickMarksVisible(this.getYTickValueVisible(scope)); for (int i = 0; i < XValues.size(); i++) { if (XValues.get(i) > domainAxis.getUpperBound()) { if (!usexrangeinterval && !usexrangeminmax) { domainAxis.setAutoRange(false); domainAxis.setRange(-0.5, YValues.get(i) + 0.5); } } if (YValues.get(i) > rangeAxis.getUpperBound()) { if (!useyrangeinterval && !useyrangeminmax) { rangeAxis.setAutoRange(false); rangeAxis.setRange(-0.5, YValues.get(i) + 0.5); } } serie.update(YValues.get(i).intValue(), XValues.get(i).intValue(), SValues.get(i).doubleValue()); } } this.resetRenderer(scope, serieid); }