What's new in Big Faceless Graph Library 2.4.9

May 25, 2023
  • Minimum version is now Java 7, and tested through to Java 17
  • Removed Flash output support
  • Finally added generics to all methods
  • Fixed "linethickness" (in wall paint) and "fixedaspectratio" attributes
  • in XML interface.
  • Added Graph.setLocale(), set via the "xml:lang" attribute in the XML interface,
  • and use it to control formatting of labels in the graph.
  • Added DateAxis.setFit() method to give more control over which dates are displayed on the axis.
  • Remove leading/trailing spaces from labels
  • Line markers can now have their line-thickness and dash patterns set
  • Dashed lines were not being joined correctly, which resulted in visual jumps when the lengths of each segment was shorter than the width of the line
  • Fixed cuts across gradient transations where one of the colors has an alpha value.
  • Fixed alpha colors in SVG
  • Fixed redirects from HTTP to HTTPS when loading images
  • Added AreaSeries.setAwayFromZero, to control how negative and positive values in an AreaSeries are added together. Mainly for compatibility with other software and with our versions of our API prior to 2.4.7
  • The "org.faceless.graph2.tag.ServletContext" parameter that can be set when using the Tag library can now include a hostname, to allow this to work behind a proxy.

New in Big Faceless Graph Library 2.4.8 (Oct 21, 2016)

  • Added option to use "backup fonts", by specifying a comma-separated list of font family names in the XML or by using the TextStyle.addBackupFont method.
  • Mainly of use for PDF Output but it will work for any.
  • Fixed ambiguity in XML syntax when parsing a date that can also be a number, e.g. "2001". If used on a date axis, it's always a date.
  • Added support for texture-paint to PDF Output
  • Corrected bold-oblique Courier font, which was failing in PDF Output
  • Add support for hyperlinks in the PDF output via the new "PDFEmbedder" class. This involved moving the "getAreas" method on ImageOutput has been moved to its superclass, Output. The latest Report Generator will need to be used to take advantage of these changes.
  • Added "normal" to list of acceptable font styles in XML syntax.
  • Added "alt" to list parameters for all hyperlinked area in XML syntax.
  • Some minor graphical improvements.

New in Big Faceless Graph Library 2.4.7 (Oct 21, 2016)

  • Added Trend-line plotting with "TrendSeries" and matching XML tag
  • AreaGraph can now plot stacked negative values as well as positive
  • Fixed drawing of "edge-on" faces, primarily for the vector formats SVG and PDF
  • Added "box" alignment for axes labels, which allows alignment to be based on all the values in the keys, rather than just individual items. See the final example in the documentation for demo.
  • The Style and TextStyle classes (and, consequently, most XML items) can have an "overflow" attribute set to "true" to cause them not to constibute to the sizing algorithm for the graphs. In practice this should be used with caution and limited to lines, markers or text.
  • The has a "lineaxes" attribute which can be set to cause the lines to only be drawn against the main, alternate or both (the default) axes.
  • Fixed some layout issues added in the previous release which only applied to the API use.
  • "currency" axes in the XML are correctly formatted using the locale.
  • Some minor graphical improvements.

New in Big Faceless Graph Library 2.4.6 (May 7, 2015)

  • Grid lines on the back and side walls of the Axes Graph can be specified with the new "StripedPaint" class, which is less clumsy than the existing setWallPaint methods. Likewise in the XML the new element can be used
  • PieGraphs have a new "innerradius" and "outerradius" concept for each slice, to allow each section of the pie to have a different ring diameter.
  • PieGraphs can have general text/markers added to them by the new addMarker or addPolarMarker methods, and lines can be added with the new addLine method. The XML interface allows this by adding a standard or to the XML.
  • Markers and Labels added to a PieGraph can have their alignment set to override the internal algorithm where required.
  • The "zrotation" field on a PieGraph can be set to NaN to auto-rotate the graph; the final rotation will be the one that results in the biggest graph.
  • The "size" value of the graph and the (x,y) offset can be retrieved from the new Graph.getActualZoom and Graph.getActualPosition methods. These can then be passed into the Graph.setFixedSize() method to duplicate the graph's scaling, reject a graph for being too small, or any other purpose.
  • The Graph.isOverlapping() method will return true if the layout involved text that might overlap. The graph should be visually inspected in this case.
  • The XML accepts the "xml:lang" attribute on all elements to set the locale for a graph, or part of a graph.
  • Improvements to rendering polylines in bitmap and PDF output.

New in Big Faceless Graph Library 2.4.5 (Dec 3, 2013)

  • Added the Graph.setOption method, which will allow some control over the rendering if required.
  • Spot colors and CIELab colors can be used in graphs, although when writing to anything but PDF they will be converted to RGB. Requires the "bfopdf.jar" file from the BFO PDF Library to be in the classpath.
  • Fixed gradients so they work with CMYK colors as well.
  • The Key (xml: ) now takes a padding option to control positioning within the Graph.
  • Improvements to rendering when drawing round-bars in bar charts.
  • Don't set the DPI attribute in the PNG unless it's specified
  • Markers weren't being drawn properly to PDFOutput.
  • Added "rectWWWxHHH" as a marker type, which can be used to create rectangular markers of a particular aspect ratio.
  • Fixed AxesGraph.getSeries() to return correct series from inside a MultiBarSeries or StackedBarSeries

New in Big Faceless Graph Library 2.4.4 (Feb 14, 2012)

  • Fixed some issues with FlashOutput - path drawing had problems, and images
  • would cause exceptions under Java 7
  • Fixed compatibility issue with Graph Library V1 in Report Generator.

New in Big Faceless Graph Library 2.4.3 (Feb 14, 2012)

  • Removed legacy code - Java 1.4 or later is now required
  • Improved algorithm to prevent overlaps of labels when drawing PieGraphs
  • Fixed adding "line" or "box" to a "stackedbarseries" in XML interface,
  • and allowed adding of image to key.
  • Corrected Series.outputToSeries() values for when graph is rotated in 3D
  • Fixed typo in JavaScript which could cause HTML mouseovers to fail on a stacked bar graph.
  • Corrected some typos in taglib.tld
  • Fixed some bugs in PDF output
  • Fixes to SOAP requests

New in Big Faceless Graph Library 2.4.2 (Jan 16, 2010)

  • Updated tag library to JSP 1.2 specification.
  • Added support for storing GraphContext in sessions, so that graph web app can be deployed in a cluster. This is done by setting the "org.faceless.graph2.UseSession" context-parameter to "true".
  • Added support for new Java 1.6 java.awt.LinearGradientPaint to XML. This is done by setting the Color attribute to match the format 'gradient(c1,v1, c2,v2, [c3,v3, ...])', where 'cn' is a Color and 'vn' is the value where that color should be set. See "xml/linearexample.java" and "LinearGradientExample.java" in the examples folder.
  • Added new "svg-sniff" format which will create SVG graphs in a manner that works with IE8.
  • Added hsv() (aka hsb) to the ways of specifying a color in the XML.
  • Correctly set external fonts in graphs created by the Report Generator.
  • Use of pattern() colors in PDF graphs now follow the "pattern" format defined in the Report Generator.
  • Fixed handling of "dpi" XML attribute.
  • Don't generate client-side JavaScript from the XML graphs unless required.
  • Changed AreaSeries to paint gradients vertically, rather than diagonally.
  • Change DateAxis so that it respects user set timezone even when the format doesn't contain time information.
  • The "key" now respects font attributes under all circumstances.

New in Big Faceless Graph Library 2.4.1 (Jun 17, 2009)

  • Fixed mouseovers relating to to multi-bar series in the tag library
  • Fixed build issue bug that was causing a required class to be obfuscated away. This was sometimes causing mouseover issues on the first graph.

New in Big Faceless Graph Library 2.2.1 (Jun 2, 2006)

  • Can now specify colors in XML graphs using the CSS3 syntax rgb(), rgba(), hsl() and hsla()
  • Correctly scale graphs when one or all axes is a Gap or Log axis.
  • Added setTimeZone to DateAxis, and allow it to be specified in the XML, eg. "date(dd-MMM-yyyy, UTC)"
  • Corrected rendering of area graphs when min value > 0
  • Fixed drawing of lineseries when there are no data points (only markers)
  • Tag Library interface now plays nicely when interleaved with other tag libraries (eg JSTL).