List of usage examples for org.jfree.chart.axis TickUnits TickUnits
public TickUnits()
From source file:MWC.GUI.JFreeChart.CourseFormatter.java
public final static TickUnits getDegreeTickUnits() { final TickUnits units = new TickUnits(); final DecimalFormat fmt = new DecimalFormat("0"); final DecimalFormat fmt2 = new DecimalFormat("0.0"); final DecimalFormat fmt3 = new DecimalFormat("0.00"); units.add(new NumberTickUnit(0.05d, fmt3)); units.add(new NumberTickUnit(0.1d, fmt2)); units.add(new NumberTickUnit(0.5d, fmt2)); units.add(new NumberTickUnit(1d, fmt)); units.add(new NumberTickUnit(2d, fmt)); units.add(new NumberTickUnit(5d, fmt)); units.add(new NumberTickUnit(10d, fmt)); units.add(new NumberTickUnit(30d, fmt)); units.add(new NumberTickUnit(45d, fmt)); units.add(new NumberTickUnit(90d, fmt)); units.add(new NumberTickUnit(180d, fmt)); units.add(new NumberTickUnit(360d, fmt)); return units; }
From source file:org.kalypso.ogc.sensor.diagview.jfreechart.PolderControlAxis.java
/** * Returns a collection of tick units for boolean values (i.e. only 0 and 1). * /*from w w w .j av a2s .c o m*/ * @return a collection of tick units for integer values. */ public static TickUnitSource createBooleanTickUnits() { final TickUnits units = new TickUnits(); final NumberTickUnit unit = new NumberTickUnit(1, new DecimalFormat("0")) //$NON-NLS-1$ { /** * @see org.jfree.chart.axis.NumberTickUnit#valueToString(double) */ @Override public String valueToString(final double value) { if (value > 1.5) return ""; //$NON-NLS-1$ if (value < 0.5) return "zu"; //$NON-NLS-1$ return "auf"; //$NON-NLS-1$ } }; units.add(unit); return units; }
From source file:org.jfree.chart.demo.WaterfallChartDemo1.java
private static JFreeChart createChart(CategoryDataset categorydataset) { JFreeChart jfreechart = ChartFactory.createWaterfallChart("Product Cost Breakdown", "Expense Category", "Cost Per Unit", categorydataset, PlotOrientation.VERTICAL, false, true, false); jfreechart.setBackgroundPaint(Color.white); CategoryPlot categoryplot = (CategoryPlot) jfreechart.getPlot(); categoryplot.setBackgroundPaint(Color.lightGray); categoryplot.setRangeGridlinePaint(Color.white); categoryplot.setRangeGridlinesVisible(true); categoryplot.setAxisOffset(new RectangleInsets(5D, 5D, 5D, 5D)); ValueAxis valueaxis = categoryplot.getRangeAxis(); DecimalFormat decimalformat = new DecimalFormat("##,###"); decimalformat.setNegativePrefix("("); decimalformat.setNegativeSuffix(")"); TickUnits tickunits = new TickUnits(); tickunits.add(new NumberTickUnit(5D, decimalformat)); tickunits.add(new NumberTickUnit(10D, decimalformat)); tickunits.add(new NumberTickUnit(20D, decimalformat)); tickunits.add(new NumberTickUnit(50D, decimalformat)); tickunits.add(new NumberTickUnit(100D, decimalformat)); tickunits.add(new NumberTickUnit(200D, decimalformat)); tickunits.add(new NumberTickUnit(500D, decimalformat)); tickunits.add(new NumberTickUnit(1000D, decimalformat)); tickunits.add(new NumberTickUnit(2000D, decimalformat)); tickunits.add(new NumberTickUnit(5000D, decimalformat)); valueaxis.setStandardTickUnits(tickunits); BarRenderer barrenderer = (BarRenderer) categoryplot.getRenderer(); barrenderer.setDrawBarOutline(false); barrenderer.setBase(5D);/*from w ww. j a va 2 s . c o m*/ DecimalFormat decimalformat1 = new DecimalFormat("$##,###.00"); decimalformat1.setNegativePrefix("("); decimalformat1.setNegativeSuffix(")"); barrenderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator("{2}", decimalformat1)); barrenderer.setBaseItemLabelsVisible(true); return jfreechart; }
From source file:org.jfree.chart.demo.CompassFormatDemo1.java
private static JFreeChart createChart() { XYDataset xydataset = createDirectionDataset(600); JFreeChart jfreechart = ChartFactory.createTimeSeriesChart("Time", "Date", "Direction", xydataset, true, true, false);/*from w w w . jav a2 s.co m*/ XYPlot xyplot = (XYPlot) jfreechart.getPlot(); xyplot.getDomainAxis().setLowerMargin(0.0D); xyplot.getDomainAxis().setUpperMargin(0.0D); NumberAxis numberaxis = (NumberAxis) xyplot.getRangeAxis(); numberaxis.setAutoRangeIncludesZero(false); TickUnits tickunits = new TickUnits(); tickunits.add(new NumberTickUnit(180D, new CompassFormat())); tickunits.add(new NumberTickUnit(90D, new CompassFormat())); tickunits.add(new NumberTickUnit(45D, new CompassFormat())); tickunits.add(new NumberTickUnit(22.5D, new CompassFormat())); numberaxis.setStandardTickUnits(tickunits); xyplot.setRangeAxis(numberaxis); XYAreaRenderer xyarearenderer = new XYAreaRenderer(); NumberAxis numberaxis1 = new NumberAxis("Force"); numberaxis1.setRange(0.0D, 12D); xyarearenderer.setSeriesPaint(0, new Color(0, 0, 255, 128)); xyplot.setDataset(1, createForceDataset(600)); xyplot.setRenderer(1, xyarearenderer); xyplot.setRangeAxis(1, numberaxis1); xyplot.mapDatasetToRangeAxis(1, 1); return jfreechart; }
From source file:org.kalypso.ogc.sensor.diagview.jfreechart.DateAxis.java
/** * Special tick units for kalypso/* w w w .ja va2 s. com*/ */ public static TickUnitSource createStandardDateTickUnits(final TimeZone zone) { if (zone == null) throw new IllegalArgumentException("Null 'zone' argument."); //$NON-NLS-1$ final TickUnits units = new TickUnits(); // date formatters // DateFormat f1 = new SimpleDateFormat("HH:mm:ss.SSS"); // DateFormat f2 = new SimpleDateFormat("HH:mm:ss"); // DateFormat f3 = new SimpleDateFormat("HH:mm"); // DateFormat f4 = new SimpleDateFormat("d-MMM, HH:mm"); // DateFormat f5 = new SimpleDateFormat("d-MMM"); // DateFormat f6 = new SimpleDateFormat("MMM-yyyy"); // DateFormat f7 = new SimpleDateFormat("yyyy"); final DateFormat f1 = new SimpleDateFormat("dd.MM HH:mm:ss.SSS"); //$NON-NLS-1$ final DateFormat f2 = new SimpleDateFormat("dd.MM HH:mm:ss"); //$NON-NLS-1$ final DateFormat f3 = new SimpleDateFormat("dd.MM HH:mm"); //$NON-NLS-1$ final DateFormat f4 = new SimpleDateFormat("dd.MM HH:mm"); //$NON-NLS-1$ final DateFormat f5 = new SimpleDateFormat("dd.MM"); //$NON-NLS-1$ final DateFormat f6 = new SimpleDateFormat("dd.MM.yy"); //$NON-NLS-1$ final DateFormat f7 = new SimpleDateFormat("yyyy"); //$NON-NLS-1$ f1.setTimeZone(zone); f2.setTimeZone(zone); f3.setTimeZone(zone); f4.setTimeZone(zone); f5.setTimeZone(zone); f6.setTimeZone(zone); f7.setTimeZone(zone); // milliseconds units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 1, f1)); units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 5, DateTickUnit.MILLISECOND, 1, f1)); units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 10, DateTickUnit.MILLISECOND, 1, f1)); units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 25, DateTickUnit.MILLISECOND, 5, f1)); units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 50, DateTickUnit.MILLISECOND, 10, f1)); units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 100, DateTickUnit.MILLISECOND, 10, f1)); units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 250, DateTickUnit.MILLISECOND, 10, f1)); units.add(new DateTickUnit(DateTickUnit.MILLISECOND, 500, DateTickUnit.MILLISECOND, 50, f1)); // seconds units.add(new DateTickUnit(DateTickUnit.SECOND, 1, DateTickUnit.MILLISECOND, 50, f2)); units.add(new DateTickUnit(DateTickUnit.SECOND, 5, DateTickUnit.SECOND, 1, f2)); units.add(new DateTickUnit(DateTickUnit.SECOND, 10, DateTickUnit.SECOND, 1, f2)); units.add(new DateTickUnit(DateTickUnit.SECOND, 30, DateTickUnit.SECOND, 5, f2)); // minutes units.add(new DateTickUnit(DateTickUnit.MINUTE, 1, DateTickUnit.SECOND, 5, f3)); units.add(new DateTickUnit(DateTickUnit.MINUTE, 2, DateTickUnit.SECOND, 10, f3)); units.add(new DateTickUnit(DateTickUnit.MINUTE, 5, DateTickUnit.MINUTE, 1, f3)); units.add(new DateTickUnit(DateTickUnit.MINUTE, 10, DateTickUnit.MINUTE, 1, f3)); units.add(new DateTickUnit(DateTickUnit.MINUTE, 15, DateTickUnit.MINUTE, 5, f3)); units.add(new DateTickUnit(DateTickUnit.MINUTE, 20, DateTickUnit.MINUTE, 5, f3)); units.add(new DateTickUnit(DateTickUnit.MINUTE, 30, DateTickUnit.MINUTE, 5, f3)); // hours units.add(new DateTickUnit(DateTickUnit.HOUR, 1, DateTickUnit.MINUTE, 5, f3)); units.add(new DateTickUnit(DateTickUnit.HOUR, 2, DateTickUnit.MINUTE, 10, f3)); units.add(new DateTickUnit(DateTickUnit.HOUR, 4, DateTickUnit.MINUTE, 30, f3)); units.add(new DateTickUnit(DateTickUnit.HOUR, 6, DateTickUnit.HOUR, 1, f3)); units.add(new DateTickUnit(DateTickUnit.HOUR, 12, DateTickUnit.HOUR, 1, f4)); // days units.add(new DateTickUnit(DateTickUnit.DAY, 1, DateTickUnit.HOUR, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 2, DateTickUnit.HOUR, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 3, DateTickUnit.HOUR, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 4, DateTickUnit.HOUR, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 5, DateTickUnit.HOUR, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 6, DateTickUnit.HOUR, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 7, DateTickUnit.DAY, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 10, DateTickUnit.DAY, 1, f5)); units.add(new DateTickUnit(DateTickUnit.DAY, 15, DateTickUnit.DAY, 1, f5)); // months units.add(new DateTickUnit(DateTickUnit.MONTH, 1, DateTickUnit.DAY, 1, f6)); units.add(new DateTickUnit(DateTickUnit.MONTH, 2, DateTickUnit.DAY, 1, f6)); units.add(new DateTickUnit(DateTickUnit.MONTH, 3, DateTickUnit.MONTH, 1, f6)); units.add(new DateTickUnit(DateTickUnit.MONTH, 4, DateTickUnit.MONTH, 1, f6)); units.add(new DateTickUnit(DateTickUnit.MONTH, 6, DateTickUnit.MONTH, 1, f6)); // years units.add(new DateTickUnit(DateTickUnit.YEAR, 1, DateTickUnit.MONTH, 1, f7)); units.add(new DateTickUnit(DateTickUnit.YEAR, 2, DateTickUnit.MONTH, 3, f7)); units.add(new DateTickUnit(DateTickUnit.YEAR, 5, DateTickUnit.YEAR, 1, f7)); units.add(new DateTickUnit(DateTickUnit.YEAR, 10, DateTickUnit.YEAR, 1, f7)); units.add(new DateTickUnit(DateTickUnit.YEAR, 25, DateTickUnit.YEAR, 5, f7)); units.add(new DateTickUnit(DateTickUnit.YEAR, 50, DateTickUnit.YEAR, 10, f7)); units.add(new DateTickUnit(DateTickUnit.YEAR, 100, DateTickUnit.YEAR, 20, f7)); return units; }
From source file:de.perdian.apps.dashboard.mvc.modules.jira.JiraController.java
@RequestMapping(value = "/jira/burndown/") @ResponseBody//from w w w. j av a 2 s . co m JiraControllerResponse doBurndown(@ModelAttribute JiraControllerRequest controllerRequest) { BurndownDto burndownDto = this.getJiraService().loadBurndown(controllerRequest.getRapidViewId(), controllerRequest.getBurndownBasis(), controllerRequest.getStoryPointFieldName()); // We want to have twenty lines at maximum, so let's adjust the steps // accordingly double maxSteps = 20; double incrementPerStep = burndownDto.getStoryPointsTotal() / maxSteps; int increment = (int) Math.max(1, Math.ceil(incrementPerStep)); TickUnits rangeTickUnits = new TickUnits(); for (int i = 0; i < burndownDto.getStoryPointsTotal(); i += increment) { rangeTickUnits.add(new NumberTickUnit(i + 1)); } TickUnits domainTickUnits = new TickUnits(); domainTickUnits.add(new NumberTickUnit(burndownDto.getDays().size() + 1)); ChartCreator chartCreator = new ChartCreator(controllerRequest); chartCreator.setTitle(controllerRequest.getTitle()); chartCreator.setDomainTickUnits(domainTickUnits); chartCreator.setRangeTickUnits(rangeTickUnits); chartCreator .addStrokeDefinition(new ChartStrokeDefinition(new BasicStroke(7f), chartCreator.getColor(), null)); chartCreator.addStrokeDefinition(new ChartStrokeDefinition(null, null, false)); chartCreator.addStrokeDefinition(new ChartStrokeDefinition(new BasicStroke(1.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND, 1.0f, new float[] { 2.0f, 6.0f }, 0.0f), chartCreator.getColor(), null)); chartCreator.setRangeAxisLabel( "worklog".equalsIgnoreCase(controllerRequest.getBurndownBasis()) ? "Worklog (Hours)" : "Storypoints"); JiraControllerResponse controllerResponse = new JiraControllerResponse(); controllerResponse.setBurndown(burndownDto); controllerResponse.setImageContent(chartCreator.createChartAsImageContent(burndownDto.toDataset())); return controllerResponse; }
From source file:com.intel.stl.ui.model.ErrorChartTickUnit.java
public TickUnits genTickUnits() { TickUnits tickUnits = new TickUnits(); tickUnits.add(new ErrorChartTickUnit(B0_25)); tickUnits.add(new ErrorChartTickUnit(B26_50)); tickUnits.add(new ErrorChartTickUnit(B51_75)); tickUnits.add(new ErrorChartTickUnit(B76_100)); tickUnits.add(new ErrorChartTickUnit(B100Plus)); tickUnits.add(new ErrorChartTickUnit(UPPER_BOUND)); return tickUnits; }
From source file:org.vimarsha.ui.TimeSlicedClassiferForm.java
private JFreeChart createChart(XYSeriesCollection dataSet, String chartTitle) { JFreeChart chart = ChartFactory.createXYLineChart(chartTitle, "Time slice number", "Classification", dataSet, PlotOrientation.VERTICAL, true, true, false); XYPlot plot = chart.getXYPlot();/* w w w . ja v a 2 s. com*/ NumberAxis range = (NumberAxis) plot.getRangeAxis(); range.setRange(0, 1.1); TickUnits units = new TickUnits(); units.add(new NumberTickUnit(0)); units.add(new NumberTickUnit(0.5)); units.add(new NumberTickUnit(1)); range.setStandardTickUnits(units); range.setNumberFormatOverride(new DecimalFormat() { public StringBuffer format(double number, StringBuffer toAppendTo, FieldPosition pos) { if (number == 1) return toAppendTo.append("badfs"); else if (number == 0.5) return toAppendTo.append("badma"); else return toAppendTo.append("good"); } }); return chart; }
From source file:org.jfree.chart.demo.WaterfallChartDemo2.java
/** * Returns the chart.//from w w w . ja v a 2 s . c o m * * @param dataset the dataset. * * @return The chart. */ private JFreeChart createChart(final CategoryDataset dataset) { final CategoryAxis xAxis = new CategoryAxis("Category"); final NumberAxis yAxis = new NumberAxis("$ in Thousands"); yAxis.setLowerMargin(0.10); yAxis.setUpperMargin(0.10); // create a custom tick unit collection... final DecimalFormat formatter = new DecimalFormat("##,###"); formatter.setNegativePrefix("("); formatter.setNegativeSuffix(")"); final TickUnits standardUnits = new TickUnits(); standardUnits.add(new NumberTickUnit(200, formatter)); standardUnits.add(new NumberTickUnit(500, formatter)); standardUnits.add(new NumberTickUnit(1000, formatter)); standardUnits.add(new NumberTickUnit(2000, formatter)); standardUnits.add(new NumberTickUnit(5000, formatter)); yAxis.setStandardTickUnits(standardUnits); // **************************************************************************** // * JFREECHART DEVELOPER GUIDE * // * The JFreeChart Developer Guide, written by David Gilbert, is available * // * to purchase from Object Refinery Limited: * // * * // * http://www.object-refinery.com/jfreechart/guide.html * // * * // * Sales are used to provide funding for the JFreeChart project - please * // * support us so that we can continue developing free software. * // **************************************************************************** final DecimalFormat labelFormatter = new DecimalFormat("##,###"); labelFormatter.setNegativePrefix("("); labelFormatter.setNegativeSuffix(")"); final WaterfallBarRenderer renderer = new WaterfallBarRenderer(); // renderer.setLabelGenerator( // new StandardCategoryLabelGenerator("{2}", labelFormatter) // ); renderer.setItemLabelsVisible(Boolean.TRUE); final CategoryPlot plot = new CategoryPlot(dataset, xAxis, yAxis, renderer); plot.setBackgroundPaint(Color.lightGray); plot.setRangeGridlinePaint(Color.white); plot.setRangeGridlinesVisible(true); final ValueMarker baseline = new ValueMarker(0.0); baseline.setPaint(Color.blue); baseline.setStroke(new BasicStroke(1.1f)); plot.addRangeMarker(baseline, Layer.FOREGROUND); final JFreeChart chart = new JFreeChart("OM WaterFall Chart", JFreeChart.DEFAULT_TITLE_FONT, plot, false); chart.setBackgroundPaint(Color.white); return chart; }
From source file:MWC.GUI.JFreeChart.DateAxisEditor.java
public static TickUnits createStandardDateTickUnitsAsTickUnits() { final TickUnits units = new TickUnits(); // milliseconds units.add(new OptimisedDateTickUnit(DateTickUnitType.MILLISECOND, 500, new RNFormatter("HH:mm:ss.SSS"))); // seconds//from www .j ava2s . c om units.add(new OptimisedDateTickUnit(DateTickUnitType.SECOND, 1, new RNFormatter("HH:mm:ss"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.SECOND, 5, new RNFormatter("HH:mm:ss"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.SECOND, 10, new RNFormatter("HH:mm:ss"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.SECOND, 30, new RNFormatter("HH:mm:ss"))); // minutes units.add(new OptimisedDateTickUnit(DateTickUnitType.MINUTE, 1, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.MINUTE, 2, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.MINUTE, 5, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.MINUTE, 10, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.MINUTE, 15, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.MINUTE, 20, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.MINUTE, 30, new RNFormatter("HH:mm"))); // hours units.add(new OptimisedDateTickUnit(DateTickUnitType.HOUR, 1, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.HOUR, 2, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.HOUR, 4, new RNFormatter("HH:mm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.HOUR, 6, new RNFormatter("ddHHmm"))); units.add(new OptimisedDateTickUnit(DateTickUnitType.HOUR, 12, new RNFormatter("ddHHmm"))); // days units.add(new OptimisedDateTickUnit(DateTickUnitType.DAY, 1, new RNFormatter("d-MMM"))); return units; }