List of usage examples for org.jfree.data.xy XYDataset getSeriesCount
public int getSeriesCount();
From source file:net.sf.fspdfs.chartthemes.spring.AegeanChartTheme.java
/** * *//* w w w. j ava 2 s . co m*/ protected void configurePlot(Plot plot, JRChartPlot jrPlot) { super.configurePlot(plot, jrPlot); if (plot instanceof CategoryPlot) { CategoryPlot categoryPlot = (CategoryPlot) plot; CategoryItemRenderer categoryRenderer = categoryPlot.getRenderer(); CategoryDataset categoryDataset = categoryPlot.getDataset(); if (categoryDataset != null) { for (int i = 0; i < categoryDataset.getRowCount(); i++) { categoryRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT); } } categoryPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217); categoryPlot.setRangeGridlineStroke(new BasicStroke(0.5f)); categoryPlot.setDomainGridlinesVisible(false); categoryPlot.getDomainAxis().setCategoryLabelPositions(CategoryLabelPositions.UP_45); } else if (plot instanceof XYPlot) { XYPlot xyPlot = (XYPlot) plot; XYItemRenderer xyItemRenderer = xyPlot.getRenderer(); XYDataset xyDataset = xyPlot.getDataset(); if (xyDataset != null) { for (int i = 0; i < xyDataset.getSeriesCount(); i++) { xyItemRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT); } } xyPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217); xyPlot.setRangeGridlineStroke(new BasicStroke(0.5f)); xyPlot.setDomainGridlinesVisible(false); xyPlot.setRangeZeroBaselineVisible(true); } }
From source file:net.sf.jasperreports.chartthemes.spring.AegeanChartTheme.java
@Override protected JFreeChart createBubbleChart() throws JRException { JFreeChart jfreeChart = super.createBubbleChart(); XYPlot xyPlot = (XYPlot) jfreeChart.getPlot(); XYBubbleRenderer bubbleRenderer = (XYBubbleRenderer) xyPlot.getRenderer(); XYDataset xyDataset = xyPlot.getDataset(); if (xyDataset != null) { for (int i = 0; i < xyDataset.getSeriesCount(); i++) { bubbleRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT); }//from w w w . java 2 s. c o m } return jfreeChart; }
From source file:net.sf.jasperreports.chartthemes.spring.AegeanChartTheme.java
@Override protected void configurePlot(Plot plot, JRChartPlot jrPlot) { super.configurePlot(plot, jrPlot); if (plot instanceof CategoryPlot) { CategoryPlot categoryPlot = (CategoryPlot) plot; CategoryItemRenderer categoryRenderer = categoryPlot.getRenderer(); CategoryDataset categoryDataset = categoryPlot.getDataset(); if (categoryDataset != null) { for (int i = 0; i < categoryDataset.getRowCount(); i++) { categoryRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT); }/*from w ww .java 2 s .c om*/ } categoryPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217); categoryPlot.setRangeGridlineStroke(new BasicStroke(0.5f)); categoryPlot.setDomainGridlinesVisible(false); categoryPlot.getDomainAxis().setCategoryLabelPositions(CategoryLabelPositions.UP_45); } else if (plot instanceof XYPlot) { XYPlot xyPlot = (XYPlot) plot; XYItemRenderer xyItemRenderer = xyPlot.getRenderer(); XYDataset xyDataset = xyPlot.getDataset(); if (xyDataset != null) { for (int i = 0; i < xyDataset.getSeriesCount(); i++) { xyItemRenderer.setSeriesOutlinePaint(i, ChartThemesConstants.TRANSPARENT_PAINT); } } xyPlot.setRangeGridlinePaint(ChartThemesConstants.GRAY_PAINT_217); xyPlot.setRangeGridlineStroke(new BasicStroke(0.5f)); xyPlot.setDomainGridlinesVisible(false); xyPlot.setRangeZeroBaselineVisible(true); } }
From source file:org.gumtree.vis.awt.time.TimePlotChartEditor.java
private JPanel createCurvesPanel() { JPanel wrap = new JPanel(new BorderLayout()); JPanel curves = new JPanel(new BorderLayout()); curves.setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2)); // JPanel general = new JPanel(new BorderLayout()); // general.setBorder(BorderFactory.createTitledBorder( // BorderFactory.createEtchedBorder(), "General")); ////from www. j av a 2s. c om // JPanel inner = new JPanel(new LCBLayout(6)); // inner.setBorder(BorderFactory.createEmptyBorder(0, 5, 0, 5)); // // inner.add(new JLabel("Show Marker")); // showMarker = new JCheckBox(); // showMarker.setActionCommand(SHOW_MARKER_COMMAND); // showMarker.addActionListener(this); // inner.add(showMarker); // inner.add(new JLabel()); // inner.add(new JLabel("Show Error")); // showError = new JCheckBox(); // showError.setActionCommand(SHOW_ERROR_COMMAND); // showError.addActionListener(this); // inner.add(showError); // inner.add(new JLabel()); // // general.add(inner, BorderLayout.NORTH); // curves.add(general, BorderLayout.NORTH); JPanel individual = new JPanel(new BorderLayout()); individual.setBorder( BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), "Individual Curve")); JPanel interior = new JPanel(new LCBLayout(7)); interior.setBorder(BorderFactory.createEmptyBorder(0, 5, 0, 5)); int numberOfDataset = chart.getXYPlot().getDatasetCount(); currentDataset = null; currentSeriesIndex = -1; List<String> seriesNames = new ArrayList<String>(); for (int i = 0; i < numberOfDataset; i++) { XYDataset dataset = chart.getXYPlot().getDataset(i); if (dataset != null && dataset instanceof ITimeSeriesSet) { int numberOfSeries = dataset.getSeriesCount(); for (int j = 0; j < numberOfSeries; j++) { String seriesName = (String) dataset.getSeriesKey(j); seriesNames.add(seriesName); if (seriesName.equals(currentSeriesKey)) { currentDataset = (IDataset) dataset; currentSeriesIndex = j; } } } } if ((currentDataset == null || currentSeriesIndex < 0) && seriesNames.size() > 0) { for (int i = 0; i < numberOfDataset; i++) { XYDataset dataset = chart.getXYPlot().getDataset(i); if (dataset != null && dataset instanceof ITimeSeriesSet && dataset.getSeriesCount() > 0) { currentDataset = (IDataset) dataset; currentSeriesIndex = 0; currentSeriesKey = (String) dataset.getSeriesKey(currentSeriesIndex); break; } } } //Select curve combo this.seriesCombo = new JComboBox(seriesNames.toArray()); seriesCombo.setActionCommand(CHANGE_CURVE_COMMAND); seriesCombo.addActionListener(this); interior.add(new JLabel("Select Curve")); interior.add(seriesCombo); interior.add(new JLabel("")); interior.add(new JLabel("Curve Stroke")); curveStrokeSample = new StrokeSample(new BasicStroke()); curveStrokeSample.setEnabled(false); interior.add(curveStrokeSample); // JButton button = new JButton(localizationResources.getString("Edit...")); Float[] strokes = new Float[] { 0f, 0.2f, 0.5f, 1f, 1.5f, 2f, 3f }; strokeCombo = new JComboBox(strokes); strokeCombo.setActionCommand(CURVE_STROCK_COMMAND); strokeCombo.addActionListener(this); interior.add(strokeCombo); interior.add(new JLabel("Curve Colour")); curveColorPaint = new PaintSample(chart.getBackgroundPaint()); interior.add(curveColorPaint); JButton button = new JButton(localizationResources.getString("Edit...")); button.setActionCommand(CURVE_COLOR_COMMAND); button.addActionListener(this); interior.add(button); interior.add(new JLabel("Marker Visible")); showMarker = new JCheckBox(); showMarker.setActionCommand(SHOW_MARKER_COMMAND); showMarker.addActionListener(this); interior.add(showMarker); interior.add(new JLabel()); interior.add(new JLabel("Marker Shape")); shapeLabel = new JLabel(); interior.add(shapeLabel); Integer[] shapeIndex = new Integer[MarkerShape.size]; for (int i = 0; i < shapeIndex.length; i++) { shapeIndex[i] = i; } shapeCombo = new JComboBox(shapeIndex); comboRender = new ImageComboRender(); comboRender.setShapes(StaticValues.LOCAL_SHAPE_SERIES); shapeCombo.setRenderer(comboRender); shapeCombo.setMaximumRowCount(7); shapeCombo.setActionCommand(MARKER_SHAPE_COMMAND); shapeCombo.addActionListener(this); interior.add(shapeCombo); interior.add(new JLabel("Marker Filled")); markerFilled = new JCheckBox(); markerFilled.setActionCommand(MARKER_FILLED_COMMAND); markerFilled.addActionListener(this); interior.add(markerFilled); interior.add(new JLabel()); interior.add(new JLabel("Curve Visable")); curveVisable = new JCheckBox(); curveVisable.setActionCommand(CURVE_VISIBLE_COMMAND); curveVisable.addActionListener(this); interior.add(curveVisable); interior.add(new JLabel()); individual.add(interior, BorderLayout.NORTH); curves.add(individual, BorderLayout.NORTH); curves.setName("Curves"); wrap.setName("Curves"); wrap.add(curves, BorderLayout.NORTH); return wrap; }
From source file:org.jivesoftware.openfire.reporting.graph.GraphEngine.java
/** * Generates a Chart.//from w w w . j ava2 s.co m * * @param title the title of the chart. * @param data the data to use in the chart. * @param xAxis the variables to use on the xAxis. * @param yAxis the variables to use on the yAxis. * @param orientation the orientation * @param itemRenderer the type of renderer to use. * @return the generated chart. */ private JFreeChart createChart(String title, XYDataset data, ValueAxis xAxis, ValueAxis yAxis, PlotOrientation orientation, XYItemRenderer itemRenderer, GraphDefinition def) { int seriesCount = data.getSeriesCount(); for (int i = 0; i < seriesCount; i++) { itemRenderer.setSeriesPaint(i, def.getInlineColor(i)); itemRenderer.setSeriesOutlinePaint(i, def.getOutlineColor(i)); } XYPlot plot = new XYPlot(data, xAxis, yAxis, null); plot.setOrientation(orientation); plot.setRenderer(itemRenderer); return createChart(title, plot); }
From source file:windows.sensorWindow.java
/** * // w ww . jav a2 s . c o m * @param domainVal * @param rangeVal * @param xydataset * @return */ public static SeriesAndItemIndex getItemIndex(double domainVal, double rangeVal, XYDataset xydataset) { Comparable comparable; int indexOf; for (int i = 0; i < xydataset.getSeriesCount(); i++) { comparable = xydataset.getSeriesKey(i); indexOf = xydataset.indexOf(comparable); for (int j = 0; j < xydataset.getItemCount(indexOf); j++) { double x = xydataset.getXValue(indexOf, j); double y = xydataset.getYValue(indexOf, j); if (x == domainVal && y == rangeVal) { return new SeriesAndItemIndex(j, indexOf);// return item // index and // series index } } } return null; }
From source file:com.hello2morrow.sonargraph.jenkinsplugin.model.AbstractPlot.java
/** * Creates a chart for a Sonargraph metric * @param categoryName Name for the X-Axis, representing a category * @return Chart built with the given parameters. */// ww w . ja v a 2s .co m public final JFreeChart createXYChart(SonargraphMetrics metric, String categoryName, int maximumNumberOfDataPoints, boolean hideLegend) { XYDataset dataset = null; try { dataset = createXYDataset(metric, maximumNumberOfDataPoints); } catch (IOException ioe) { SonargraphLogger.INSTANCE.log(Level.SEVERE, "Failed to read metrics from data file '" + m_datasetProvider.getStorageName() + "'"); } JFreeChart chart = createChartInternal(metric.getDescription(), categoryName, metric.getShortDescription(), dataset); XYPlot plot = (XYPlot) chart.getPlot(); int dataPoints = 0; if (dataset == null) { plot.setNoDataMessage( "There was an error loading data for metric '" + metric.getShortDescription() + "'"); } else { for (int i = 0; i < dataset.getSeriesCount(); i++) { dataPoints += dataset.getItemCount(i); } if (dataPoints == 0) { plot.setNoDataMessage("No data found for metric '" + metric.getShortDescription() + "'"); } } if ((dataset == null) || (dataPoints == 0)) { plot.setNoDataMessagePaint(Color.RED); plot.setDomainGridlinesVisible(false); plot.setRangeGridlinesVisible(false); } applyRendering(plot); setRangeAxis(metric.isNaturalNumber(), plot); applyStandardPlotColors(plot); if (hideLegend) { chart.removeLegend(); } return chart; }
From source file:api.window.Histogram.java
private JFreeChart createChart(XYDataset xydataset) { JFreeChart jfreechart = ChartFactory.createXYAreaChart(null, null, null, xydataset, PlotOrientation.VERTICAL, false, true, false); jfreechart.setBackgroundPaint(Color.white); xyplot = (XYPlot) jfreechart.getPlot(); xyplot.setBackgroundPaint(Color.lightGray); xyplot.setForegroundAlpha(0.65F);// w w w .j a v a 2 s . c o m xyplot.setDomainGridlinePaint(Color.white); xyplot.setRangeGridlinePaint(Color.white); ValueAxis valueaxis = xyplot.getDomainAxis(); valueaxis.setTickMarkPaint(Color.black); valueaxis.setLowerMargin(0.0D); valueaxis.setUpperMargin(0.0D); renderer = xyplot.getRenderer(); if (xydataset.getSeriesCount() == 4) { renderer.setSeriesPaint(0, Color.red); renderer.setSeriesPaint(1, Color.green); renderer.setSeriesPaint(2, Color.blue); renderer.setSeriesVisible(0, true); renderer.setSeriesVisible(1, true); renderer.setSeriesVisible(2, true); renderer.setSeriesPaint(3, Color.BLACK); renderer.setSeriesVisible(3, true); } else { this.remove(this.jPanel1); renderer.setSeriesPaint(0, Color.BLACK); renderer.setSeriesVisible(0, true); } ValueAxis valueaxis1 = xyplot.getRangeAxis(); valueaxis1.setTickMarkPaint(Color.black); return jfreechart; }
From source file:org.openfaces.component.chart.impl.plots.XYPlotAdapter.java
@Override public boolean render(Graphics2D g2, Rectangle2D dataArea, int index, PlotRenderingInfo info, CrosshairState crosshairState) { final XYItemRenderer renderer = getRenderer(); final boolean customRenderingModeEnabled = renderer instanceof AreaFillRenderer; if (!customRenderingModeEnabled) { return super.render(g2, dataArea, index, info, crosshairState); }//from w w w. j a v a 2s . c o m XYDataset xyDataset = getDataset(index); final boolean isDataSetNotEmpty = !DatasetUtilities.isEmptyOrNull(xyDataset); if (!isDataSetNotEmpty) { return false; } ValueAxis xValueAxis = getDomainAxisForDataset(index); ValueAxis yValueAxis = getRangeAxisForDataset(index); XYItemRenderer xyItemRenderer = findRenderer(index); if (xValueAxis == null || yValueAxis == null || xyItemRenderer == null) { return false; } XYItemRendererState state = xyItemRenderer.initialise(g2, dataArea, this, xyDataset, info); boolean isReverseSeriesRenderingOrder = getSeriesRenderingOrder() == SeriesRenderingOrder.REVERSE; int totalRendererPasses = xyItemRenderer.getPassCount(); int totalSeries = xyDataset.getSeriesCount(); if (isReverseSeriesRenderingOrder) { for (int seriesIndex = totalSeries - 1; seriesIndex >= 0; seriesIndex--) { renderItems(g2, dataArea, info, crosshairState, xyDataset, xValueAxis, yValueAxis, xyItemRenderer, state, totalRendererPasses, seriesIndex); } } else { for (int seriesIndex = 0; seriesIndex < totalSeries; seriesIndex++) { renderItems(g2, dataArea, info, crosshairState, xyDataset, xValueAxis, yValueAxis, xyItemRenderer, state, totalRendererPasses, seriesIndex); } } return true; }
From source file:org.eurocarbdb.application.glycoworkbench.plugin.PeakListChartPanel.java
public void updateIntensityAxis() { double max_int = 0.; for (int d = 0; d < thePlot.getDatasetCount(); d++) { XYDataset dataset = thePlot.getDataset(d); for (int s = 0; s < dataset.getSeriesCount(); s++) for (int i = 0; i < dataset.getItemCount(s); i++) max_int = Math.max(max_int, dataset.getYValue(s, i)); }/*from ww w . j ava 2 s . c om*/ if (max_int == 0.) { // no data return; } Range new_int_range = new Range(0., max_int); // make space for annotations Rectangle2D data_area = theChartPanel.getScreenDataArea(); if (data_area.getHeight() > 0) new_int_range = Range.expand(new_int_range, 0., 12. / data_area.getHeight()); thePlot.getRangeAxis().setRange(new_int_range); }