List of usage examples for org.jfree.chart.axis TickUnits get
public TickUnit get(int pos)
From source file:org.pentaho.plugin.jfreereport.reportcharts.CategoricalChartExpressionTest.java
@Test public void testStandardTickUnitsApplyFormat() throws Exception { NumberAxis axis = new NumberAxis(); final TickUnits standardTickUnits = (TickUnits) axis.getStandardTickUnits(); final double initialFirstTickUnitSize = standardTickUnits.get(0).getSize(); assertTickUnitSizeByPattern("", initialFirstTickUnitSize); assertTickUnitSizeByPattern("#,###", 1.0); assertTickUnitSizeByPattern("#", 1.0); assertTickUnitSizeByPattern("#.#", 0.1); assertTickUnitSizeByPattern("#.####", 1.0E-4); }
From source file:org.pentaho.plugin.jfreereport.reportcharts.CategoricalChartExpressionTest.java
private void assertTickUnitSizeByPattern(String pattern, double tickUnitSize) { NumberAxis axis = new NumberAxis(); DecimalFormat formatter = new DecimalFormat(pattern, new DecimalFormatSymbols(new Locale("en_US"))); expression.standardTickUnitsApplyFormat(axis, formatter); final TickUnits standardTickUnits = (TickUnits) axis.getStandardTickUnits(); // first n standard tick unit elements should be removed Assert.assertEquals(tickUnitSize, standardTickUnits.get(0).getSize(), 0.0000000001); }
From source file:org.pentaho.plugin.jfreereport.reportcharts.AbstractChartExpression.java
/** * Reduces standard tick unit array to meet formatting precision and avoid duplicated values (PRD-5821) * * @return//from www. j ava 2 s . c om */ protected void standardTickUnitsApplyFormat(NumberAxis numberAxis, NumberFormat format) { final TickUnits standardTickUnits = (TickUnits) numberAxis.getStandardTickUnits(); TickUnits cutTickUnits = new TickUnits(); double formatterMinSize = 1 / Math.pow(10, format.getMaximumFractionDigits()); for (int i = 0; i < standardTickUnits.size(); i++) { if (Double.compare(standardTickUnits.get(i).getSize(), formatterMinSize) >= 0) { cutTickUnits.add(new NumberTickUnit(standardTickUnits.get(i).getSize())); } } numberAxis.setStandardTickUnits(cutTickUnits); }