OrientationShapeFrame

The OrientationShapeFrame object contains the shape styles for line elements with variable orientation. To create a OrientationShapeFrame object, call the OrientationShapeFrame constructor.

var frame = new OrientationShapeFrame('Total');

You can pass the name of a field (e.g., ‘Total’) to the constructor, or specify this later using the inherited VisualFrame.setField(field) property. You can also set this using the bindingInfo.shapeFrame syntax in onRefresh script . See Example 2 below.

Example 1

Chart Component Script
dataset = [["State","Quantity","Total"], ["NJ",200,30], ["NY",300,15], ["PA",150,5]]; (1)
graph = new EGraph();
var elem = new PointElement("State", "Quantity");
var shapeframe = new OrientationShapeFrame("Total"); (2)
var sizeframe = new StaticSizeFrame();
sizeframe.setSize(10);
elem.setSizeFrame(sizeframe);
elem.setShapeFrame(shapeframe); (3)
graph.addElement(elem);
1 See dataset to use a data block instead of an array literal.
2 Create the OrientationShapeFrame object.
3 Use GraphElement.setShapeFrame(frame) to add the ShapeFrame to the element.

OrientationFrame2

Script that modifies the graph or dataset properties should be placed on the Chart component itself. See Add Component Script for more information. This script has access to the Chart data and Chart API methods. Scripted Charts are not good candidates for user-modification, so you should deselect ‘Enable Ad Hoc Editing’ in the Chart Properties dialog box.

Example 2

This example illustrates how to use bindingInfo properties to control the ShapeFrame.

  1. Bind a Bar Chart to the sample ‘All Sales’ Data Worksheet, with ‘Company’ (top 5) on the X-axis, and Sum(Total) on the Y-axis.

    The ‘All Sales’ Data Worksheet can be found in the Data Worksheet  Sample Queries folder. You may need to download the examples.zip file from GitHub into your environment. (This requires access to Enterprise Manager.) See Import and Export Assets for instructions on how to import.
  2. Add the following script in the onRefresh handler. (See Add Dashboard Script.)

    onRefresh Script
    Chart1.bindingInfo.setShapeField("Total",Chart.NUMBER);
    Chart1.bindingInfo.shapeFrame = new OrientationShapeFrame;

    OrientationShapeFrame

    Dashboard script that modifies bindingInfo should generally be placed in the onRefresh handler. See Add Dashboard Script.