Support For Microsoft Office Charts
The standard way to create charts in MS Word is to use a Chart Tag. What this means is it's actually a Microsoft Office chart in the template, and it has a Chart Tag backing it for the data part. This lets you do all of the formatting and layout with standard Microsoft Office tools.
When you're generating DOCX output, everything appears in the output as is, so there are few limitations. But when you're generating PDF output, for example, the chart is converted to a bitmap image - a picture. In this case, there are more limitations. Here we list various features support details. Notice that there are many general features, such as labels, and we make statements about them as a whole, but there may be exceptions for specific uses, such as axis labels or data labels.
Table of Contents
Output Formats
- For Office Chart Tags, if the template format and the output format are both DOCX, then the output will be an Office chart; otherwise it will be a bitmap. Output to XLSX from DOCX templates is not supported.
- For native charts, DOCX output from DOCX templates, or XLSX output from XLSX templates, the output will be an Office chart. XLSX output from DOCX templates and DOCX output from XLSX templates are not supported. For all other output formats, the output will be a bitmap.
- In Office charts, data can be stored as literal data contained in the chart, or it can be stored as a reference to some other data store (typically a worksheet or embedded workbook). We always output literal data. As a result, the data cannot be edited in the output, because literal data cannot be edited in Microsoft Office.
General Chart Features Limitations
Shadow, Glow, Soft Edges, Outline and 3D Features
None of these Office chart features are supported for Chart Tag bitmap output.
Drawings
Office charts can have drawings in them, and this is generally not supported for Chart Tag bitmap output. The two exceptions are textboxes and scatter markers, for which there is limited support in Chart Tags.
Fills, Colors and Line Styles Features
- Generally, only solid, non-theme color fills are supported. If your color doesn't come through, check that it's not a theme color.
- Gradient, texture and pattern fills are not supported.
- Picture fills are only supported for Office scatter chart markers and the picture must be a PNG file.
- Line width is supported.
- Line compound type, dash type, cap type, join type, arrow settings are not supported.
- Color palettes are not supported.
- Series colors and point colors may be set. This always applies by index. For example, the series color of the first series, second series, and so on. It does not apply by series name or x-value. Typically, the number of series/points must be known ahead of time for this to be of use in Chart Tags.
Chart Area and Plot Area
In Office charts, you can set the chart area size and plot area size and position. Chart Tags support that in bitmap output.
Labels
- Font face, font size, font color, rotation, on/off are supported.
- Vertical alignment, autofit, margins, wrap text, columns are not supported.
Axes
Automatically Determined Axis Scales
For number and date axes in Office charts, the scale (max, min, intervals) is automatically determined by default. We do not support exact replication of Office behavior, because it is undocumented. For example, Office may choose the scale of every six months, and we may choose a scale of every two months.
Date Axes
- Setting some or all of the date scale values is supported (min, max or interval). Any that are not set will be automatically determined.
- Note that Microsoft Office does not support plotting date scales of resolution lower than a day (e.g. hour/minute/second). However, Windward supports hour/minute/second time scales via the classic Chart Tag.
Number Axes
- Setting some or all of the number scale values is supported (min, max or interval). Any that are not set will be automatically determined.
- Logarithmic scales are not supported.
- The display units setting in Office charts is not supported in Chart Tag bitmap output.
String Axes
If numeric or date data is plotted on a string axis, each x-value will be treated like a separate category, and the values will not be sorted like they would be on a date or number axis. (This is the same as Office.)
Secondary Axes
- You cannot have a right or top axis only – there is always a corresponding left or bottom axis. For example, in a column chart, you can have just the bottom x axis, and just the left y axis; or you can also add the right y axis; but you cannot have just the bottom x axis and just the right y axis.
- Secondary x axes are only supported for column graphs. When a column graph is plotted against the secondary x axis, it will overlap with the column graphs of the primary x axis, rather than cluster with them.
- When two bar or column graphs are plotted against the primary x axis, but different y axes, they should cluster. This differs from Microsoft Office rendering.
Number and Date Format Codes
For Chart Tag bitmap output, there is limited support for Excel number format codes. There is also support for format codes in classic Chart Tags, but it is Windward format, not Excel format. The following are limitations of Excel number formats in Office charts:
- Positive, negative, and zero parts are supported (the first three of the semicolon-delimited parts). Text part is not supported. Positive, positive;negative, and positive;negative;zero are supported.
- Colors and conditions are supported.
- General format numbers are treated as though they are in a 9-character-wide column. This affects the values at which numbers will display in scientific notation, and also rounding and precision.
- Alignment digits (question-mark, '?') are treated as optional digits (number-sign, '#').
- Underscore-space characters are not supported. This where you set "_" followed by a character to introduce a space having the same width as the character, for example, "_)" would produce a space the same width as the right parenthesis character.
- Repeat characters are not supported. This is where you set "*" after a character to have it fill out the column width with that character. For example, 0* would put enough 0's to fill up the column.
- Fractions are not supported. This is where you use a slash character to display the fractional component in numerator/denominator notation. For example, displaying 5.25 as 5 1/4.
- When percentage formatting is applied to an axis, the numbers on the axis are multiplied by 100 and have a percentage sign.
- Numeral shape, calendar type, and locale codes are not supported.
Tick Marks
- Cross and inside tick marks are not supported for Chart Tag bitmap output. Outside and none are supported.
- Minor ticks in bar and column charts are not supported for Chart Tag bitmap output.
Reverse Values
Reverse values is not supported in Chart Tag bitmap output.
Axis Crossing Point
In Office charts, there is a setting for the axis crossing point. This is supported only on the horizontal bottom axis for Chart Tag bitmap output. In the Office UI, this value is set on the left vertical axis. Only numeric values are supported.
Position Axis on or Between Tick Marks
This is a setting in Office charts. This is supported for all charts.
Fill, Line Color and Line Style
Except for no-fill/no-color, these settings are not supported for Chart Tag bitmap output.
Deletion
An axis may be deleted or set to none – in this case, the value labels and tick marks will not render.
Labels
- Axis label position is not supported in Chart Tag bitmap output. The labels will always position on the respective axis side, outside of the plot area.
- In Office, under certain circumstances, labels will be automatically rotated. Automatic label rotation is not supported.
- Label rotation is not supported on a per-point basis.
- Distance From Axis is not supported for Chart Tag bitmap output.
- Text wrapping is supported for value/tick labels, but it may not match Office exactly.
Legends
- We support any of the right, top, bottom, left position settings of Office charts.
- We do not support custom sizes of the legend box.
- We do not support custom symbols in the legend box.
- We do not support custom labels in the legend box. The labels are always the series names. You can't delete any of the entries.
- We support font face and size, and no other font features.
- We do not support legend borders or fills.
Gridlines and Tick Marks
- On/off, color, thickness are supported
- Minor gridlines and tick marks are not supported for the independent axis of bar and column charts.
- Gridlines originating from both the primary and secondary axis are not supported. If a secondary axis exists and has gridlines turned on, then the gridlines will originate from that axis and the primary axis gridlines will be ignored.
Data Labels
Data labels are the labels that go in the plot area, on or around the data marker. The following statements apply to Chart Tag bitmap output only:
- On/off, font face, font size, font color are supported.
- Rotation is supported on a per-series basis, but not a per-point basis. Per-point basis is supported in pie and doughnut charts.
Textboxes
- You may have textboxes in an Office chart. We support that for Chart Tag bitmap output, with some limitations.
- We do not support margins – the margin is always 0.
- We support font face, font size, font color, bold, italic.
- We support rotation applied to the text within the text box, but not applied to the text box itself.
- We do not support text wrapping.
- We support setting the size and position of the text box.
Error Bars
- This is similar to, but not the same as, Office chart error bars. This is only supported for Chart Tags. This is not configured in the usual way as an Office chart is, but as a Tag attribute, similar to x and y queries. This is only supported for column charts.
- All graphs in the series must use error bars or not use error bars – no differences between series. All points must have an error bar value. Each series must have the same number of x-coordinates.
- Formatting the error bar is not supported. It is always a 2pt thick, black line, in the shape of a capital I, end caps 75% bar width.
Resolution/DPI
- Resolution of Chart Tag bitmap output can be controlled using Windward system properties. The default is 600 dpi. This high resolution will usually get downsampled to 96 dpi by rendering applications such as Adobe Reader, but the advantage is that when the image is zoomed in, it will give better and better resolution, and when the image is printed, it will also give good resolution.
- A chart and all components within it will appear the same relative size, regardless of resolution.
Data Tables
We do not support the Data Table component of Office charts.
Limitations by Chart Type
Bar and Column Charts
- “Vary colors by point” is supported. If it is set and there is only one series, each bar will have a different color.
- Gap width and overlap are supported.
- For Chart Tag bitmap output, when plotted on a date axis, by default, the bars will take a different width than what is seen in Office. We apply a size appropriate for overlaying high-frequency line graphs upon low-frequency column graphs. The Office method for this results in undesirably skinny bars.
Line Charts
- “Vary colors by point” is not support it for line charts.
- Line weight is supported.
- Smooth lines are not supported for Chart Tag bitmap output.
- No-line types are not supported for Chart Tag bitmap output.
- If the Office chart has line markers applied to a series, then line markers will be applied to that series. But it will always be a default marker that does not necessarily match Office.
- Dashed line styles in Office charts are supported for Chart Tag bitmap output, except for “Long Dash Dot Dot”.
Pie Charts
- Rotation, explosion are supported.
- If multiple series are identified in the data, only the first is used.
Data Labels
- On/off, font face, font size, font color are supported.
- Two layout methods are supported for Chart Tag bitmap output: outside-end and side-layout. For Office charts, outside-end is always used except when best-fit is specified, in which case side-layout is used.
- For Office charts, only General format is supported for the label formatting.
- Leader lines for data labels are not supported.
Area Charts
- “Vary colors by point” is not supported.
- Line colors and styles are not supported.
- Area Charts do not support x-axes type "number"
Doughnut Charts
- Support is the same as pie charts for Chart Tag bitmap output.
- Only the first series will be used – Office creates concentric doughnuts for each series.
- Hole size is supported.
Scatter Charts
- “Vary colors by point” is not supported.
- Line modes are not supported. Only markers with no lines is supported, and you cannot turn off the markers.
- Markers will not necessarily match Office.
- Setting the marker type is not supported, except for picture markers, and they must be PNG files.
- Scatter Charts do not support x-axes type "category"
Bubble Charts
- “Vary colors by point” is not supported.
- Size by area is always used – size by width is not supported.
- Bubble size scale is not supported – it's always 100%.
Combo Charts
Combo charts must be built using Windward's chart tag editor. Changes made to a chart using the "Change Chart Type" dialog are not supported.
Native Chart Limitations
Data Stores
By default, a native chart created by Microsoft Office will use data in one of the worksheets for XLSX templates, or data in an embedded XLSX workbook for DOCX templates. These are the only kinds of data stores that are supported. For example, it is possible to get data from a linked XLSX workbook, or to use an OLE workbook reference – these are not supported.
XLSX Templates
- Native charts must not appear in the scope of a ForEach Tag.
- We support updating cell range formulas in charts in XLSX templates to account for ForEach Tags. For example, suppose the native chart references a cell range that is below a ForEach Tag (but not within the scope of the ForEach Tag) – the referenced cells will be pushed down by the ForEach Tag's expansion. So we must update the range formulas in native charts to account for this. We support this.
- We do not support charts referencing cells that are within the scope of a ForEach Tag in the template.
0 Comments
Add your comment