addChart

addChart

BASIC / ADVANCED / PREMIUM

Inserts a chart into a Word document.

Description
public String addChart(OptionsChart options) throws Exception

This method allows the insertion of a chart into your Word document.

You may insert many different type of 2D and 3D charts:

  • 2D
    • Bar (clustered, stacked and 100% stacked).
    • Column (clustered, stacked and 100% stacked).
    • Pie (simple, exploded, pie of pie and bar of pie).
    • Doughnut.
    • Line.
    • Area.
    • Surface.
    • Radar.
    • XY(scatter).
    • Bubble.
  • 3D
    • Bar: box (default), cylinder, cone, and pyramid (clustered, stacked and 100% stacked).
    • Column: box (default), cylinder, cone, and pyramid (clustered, stacked and 100% stacked).
    • Pie (simple and exploded).
    • Surface.
    • Line.

This method also allows adding combo charts, trendlines, grids, labels and many other chart features.

Parameters

options

Key Type Description
dataLegends ArrayList<String> Legend values.
dataNames ArrayList<String> Name values.
dataValues ArrayList<ArrayList<Double>> Data values.
type String The possible values are:
  • barChart
  • bar3DChart
  • bar3DChartCylinder
  • bar3DChartCone
  • bar3DChartPyramid
  • colChart
  • col3DChart
  • col3DChartCylinder
  • col3DChartCone
  • bar3DChartPyramid
  • pieChart
  • pie3DChart
  • ofPieChart (pie of pie and bar of pie charts)
  • lineChart
  • line3DChart
  • areaChart
  • area3DChart
  • radarChart
  • scatterChart
  • bubbleChart
  • doughnutChart
  • surfaceChart
title String The chart title (if any).
border Integer Border width in points.
chartAlign String Chart alignment: left (default), right or center.
color String Word color scheme for charts:
  • 1: greyscale.
  • 2: default Word color scheme for charts.
  • 3: blue scheme.
  • For the remaining color schemes (up to 48) check the Word interface.
comboChart String Chart to add a as combo chart. Use with the returnChart option. Global styles and properties are shared with the base chart. For bar, col, line, area, and radar charts.
floatChart String Floating chart: left, right or center. It only applies if textWrap is not inline (default value).
font String The font to be used. Arial, Calibri...
returnChart Boolean False as default, if true return the XML of the chart. To be used with the comboChart option.
sizeX Integer The chart width in centimeters (default value aprox 8.5 cm).
sizeY Integer The chart height in centimeters (default value aprox 6.0 cm).
textWrap Integer The way text shoud wrap the chart. Possible values are (check in the Word interface for the graphical explanation of the different terms):
  • 0 (inline)
  • 1 (square)
  • 2 (front)
  • 3 (back)
  • 4 (up and bottom)
trendline ArrayList<HashMap<String, String>> Adds trendlines. Compatible with line, bar, col and area 2D charts. Possible keys and values are:
  • color => (string) 0000ff.
  • display_equation => (bool) display equation on chart.
  • display_rSquared => (bool) display R-squared value on chart.
  • intercept => (float) set intercept.
  • line_style => (string) solid, dot, dash, lgDash, dashDot, lgDashDot, lgDashDotDot, sysDash, sysDot, sysDashDot, sysDashDotDot.
  • type => (string) exp, linear, log, poly, power, movingAvg.
  • type_order => (int) for poly and movingAvg types.

Chart display properties

Key Type Description
formatCode String Number format.
formatDataLabels HashMap<String, String> Possible keys and values are:
  • rotation
  • position
haxLabel String Label for the horizontal axis.
haxLabelDisplay String How to display the label of the horizontal axis. Possible values are: vertical, horizontal, rotated.
hgrid Integer Horizontal grid. Possible values are:
  • 0 (no grid)
  • 1 (only major grid lines - default)
  • 2 (only minor grid lines)
  • 3 (both major and minor grid lines)
horizontalOffset Integer Given in emus (1cm = 360000 emus).
majorUnit String Major unit value for bar, col, line, area, radar and scatter charts.
minorUnit String Minor unit value for bar, col, line, area, radar and scatter charts.
scalingMax Double Scaling max value for bar, col, line, area, radar and scatter charts.
scalingMin Double Scaling max value for bar, col, line, area, radar and scatter charts.
stylesTitle HashMap<String, String> Possible keys and values are:
  • bold
  • color
  • font
  • fontSize
  • italic
vaxLabel String Label for the vertical axis.
vaxLabelDisplay String How to display the label of the horizontal axis. Possible values are: vertical, horizontal, rotated.
verticalOffset Integer Given in emus (1cm = 360000 emus).
vgrid Integer Vertical grid. Possible values are:
  • 0 (no grid)
  • 1 (only major grid lines - default)
  • 2 (only minor grid lines)
  • 3 (both major and minor grid lines)

The available parameters to display legends and data include:

Key Type Description
legendOverlay Boolean If true the legend may overlay the chart. This option may hinder the legibility of tha data so it is only recommended if it is crucial to "save space".
legendPos String The possible values are:
  • b (bottom)
  • l (left)
  • r (right)
  • t (top)
  • none
showCategory Boolean If true shows the categories inside the chart.
showLegendKey Boolean If true shows the legend values.
showPercent Boolean If true shows the percentage values.
showSeries Boolean If true shows the series values.
showTable Boolean If true shows the chart data in an associated table.
showValue Boolean If true shows the chart data values.

Further configuration options for specific chart types are:

Key Type Description
Bar and column charts
gapWidth Integer Distance between the two charts.
groupBar String Different ways to group the data. Possible values are: clustered, stacked, percentStacked and standard.
overlap String Overlap.
tickLblPos String Tick label position.
Pie and doughnut charts
explosion Integer Distance among different sectors.
holeSize Integer Size of the inner hole (only doughnut charts).
ofPieCharts: pie of pie and bar of pie charts
custSplit ArrayList<Integer> Custom split.
gapWidth Integer Distance between the two charts.
secondPieSize Integer Percentage size of the auxiliary chart.
splitType String How to split the two charts. Possible values are:
  • auto (default split type)
  • cust (custom Split)
  • percent (split by percentage)
  • pos (split by position)
  • val (split by value)
splitPos Double Determines the threshold value to split the charts.
subtype String Defines if the auxiliary chart is a pie or bar chart. Possible values are pie or bar.
Line and scatter (XY) charts
smooth Boolean If true it smooths the line (only scatter charts).
symbol String The possible symbol values are:
  • Line charts: none, dot, plus, square, star, triangle, x, diamond, circle and dash.
  • Scatter charts: dot and line.
symbolSize Integer The size of the symbol used.
Radar charts
style String Defines the radar chart style. Possible values are:
  • radar (lines without dots)
  • marker (lines with dots)
  • filled (filled enclosed area)
Surface charts
wireframe Boolean If true the surface is shown as a wireframe.

Additional available options for 3D charts:

Key Type Description
perspective Integer Perspective angle. Angles beyond 25 degrees provoke a big distortion in the 3D chart representation.
rotX Integer Rotation angle respect the vertical axis. Standard values are between 10 and 20 degrees.
rotY Integer Rotation angle respect the horizontal axis. Standard values are between 10 and 20 degrees.
Return values

String. To be used as combo chart.

Code samples

Example #1

The resulting Word document looks like:

Example #2

The resulting Word document looks like:

Example #3

The resulting Word document looks like: