Platforms to show: All Mac Windows Linux Cross-Platform
Back to CDLayerMBS class.
CDLayerMBS.setBorderColor(colorvalue as Integer, lightingEffect as Integer = 0)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method only applies to layers that represents data with elements that have borders (e.g. bar layer).
This method affect all data sets. To set the color of one particular data set, use DataSet.setDataColor.
Argument | Default | Description |
color | (Mandatory) | The border color. |
raisedEffect | 0 | The 3D border width. For positive values, the border will appear raised. For negative values, the border will appear depressed. A zero value means the border will appear flat. This argument is also used to support glassEffect and softLighting effects. |
See also:
CDLayerMBS.setDataCombineMethod(m as Integer)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method is used only for layers that can combine multiple data sets in different ways. Some layers can only support a subset of the data combine methods defined below.
ConstantValueDescription
Side | 3 | The data sets are combined by plotting the data representation side by side. |
Stack | 1 | The data sets are combined by stacking up their data representations. |
Overlay | 0 | The data sets are combined by drawing them independently, overlapping each others. |
Percentage | 4 | The data sets are combined similar to the Stack method, except that the data is scaled so that each stack always summed up to 100. In other words, the region that a data item occupies in a stack represents the percentage of the data item relative to sum of all the data items in the stack. |
Argument | Default | Description |
m | (Mandatory) | one of the predefined constants representing the data combine method to use. |
CDLayerMBS.setDataLabelFormat(formatString as string)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method affects all data labels in the layer. To set the label format for one particular data set only, use DataSet.setDataLabelFormat.
Data labels are text used label data points in the layer. Please refer to Layer.setDataLabelStyle for a more detail description.
By default, the data label format is "{value}". Please refer to Parameter Substitution and Formatting on available parameters and how to format them.
Argument | Default | Description |
formatString | (Mandatory) | The format string. |
CDLayerMBS.setDataLabelStyle(font as string = "", fontSize as Double = 8, fontcolor as color, fontAngle as Double = 0) as CDTextBoxMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 11.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
See also:
CDLayerMBS.setDataLabelStyle(font as string = "", fontSize as Double = 8, fontcolor as Integer = &hffff0002, fontAngle as Double = 0) as CDTextBoxMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method affects all data labels in the layer. To set the style for one particular data set only, use DataSet.setDataLabelStyle.
Data labels are text used label data points in the layer. Different layer types put data labels in different positions. For example, in a bar chart, data labels are put at the internal end of the bar. For a line chart, data labels are put above the data points.
For some chart types, the position of the data labels can be manipulated by calling the TextBox.setAlignment method of the TextBox object returned by the setDataLabelStyle method.
See Font Specification for details on various font attributes.
Argument | Default | Description |
font | "" | The font used to draw the labels. |
fontSize | 8 | The font size used to draw the labels. |
fontColor | TextColor | The color used to draw the labels. |
fontAngle | 0 | The rotation angle of the labels. |
A TextBox object representing the prototype of the obj. This may be used to fine-tune the appearance of the obj.
See font specification here:
http://www.monkeybreadsoftware.net/faq-chartdirectorfontspecification.shtml
See also:
CDLayerMBS.setHTMLImageMap(url as string, queryFormat as string = "", extraAttr as string = "")
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
BaseChart.getHTMLImageMap can be used to generate HTML image map for the whole chart. When BaseChart.getHTMLImageMap is used, the image map for all layers will be generated based on the arguments supplied to BaseChart.getHTMLImageMap.
The setHTMLImageMap method can be used to override those arguments for a chart layer, so the image map for that layer can be different.
For a detail description of image maps, please refer to BaseChart.getHTMLImageMap.
Argument | Default | Description |
url | (Mandatory) | The URL to be used in the "href" attribute of the image map. Parameter Substitution and Formatting is supported. |
The special keyword "{default}" represents the global URL as specified in BaseChart.getHTMLImageMap. This field is useful for specifying appending to the global URL.
Note that an empty string also means to use the global URL. To specify no URL, use the special keyword "{none}".
To disable the entire image map, use the special keyword "{disable}".
queryFormat | "" | A text string representing the template of the query parameters to be appended to the URL. Parameter Substitution and Formatting is supported. |
The special keyword "{default}" represents the global query parameters as specified in BaseChart.getHTMLImageMap. This field is useful for specifying appending to the global query parameters.
Note that an empty string also means to use the global query parameters. To specify no query parameters, use the special keyword "{none}".
extraAttr | "" | A text string to specify additional attributes to add to the <area> tag. Parameter Substitution and Formatting is supported. |
The special keyword "{default}" represents the global additional attributes as specified in BaseChart.getHTMLImageMap. This field is useful for specifying appending to the global additional attributes.
Note that an empty string also means to use the global additional attributes. To specify no additional attributes, use the special keyword "{none}".
CDLayerMBS.setLegend(m as Integer)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method is for backward compatibility. It is equivalent to Layer.setLegendOrder(m).
Argument | Default | Description |
m | (Mandatory) | One of the predefined constants representing the legend entry ordering method for data sets within the layer. |
CDLayerMBS.setLegendOrder(dataSetOrder as Integer, layerOrder as Integer = -1)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
By default, ChartDirector will add named data sets to the the legend box. The ordering of the entries follows the order in which the layers are created. For data sets within the same layer, the ordering follows the order in which the data sets are added.
To support flexible ordering of the legend entries, ChartDirector employs a legend entry priority system. Please refer to LegendBox for details of the legend entry priority system.
The base priority of the layer can be specified using the layerOrder argument. The priority of the data sets within a layer can be modified by using the dataSetOrder argument, which must be one of the following predefined constant.
ConstantValueDescription
NormalLegend | 0 | The data set priority is 10 x (data_set_index + 1). Legend entries are ordered in the order with which the data sets are created. |
ReverseLegend | 1 | The data sets priority is the reverse of the normal data set priority. Legend entries are ordered in the reverse order with which the data sets are created. |
NoLegend | 2 | The data set names are not added to the legend box at all. |
Argument | Default | Description |
dataSetOrder | (Mandatory) | One of the predefined constants representing the legend entry ordering method for data sets within the layer. |
layerOrder | -1 | The base legend entry priority of the layer. The default value of -1 means the priority is 10000 x (layer_index + 1). |
CDLayerMBS.setLineWidth(w as Integer)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method only applies to layers that employ lines to represent data (e.g. line layer).
This method affect all data sets. To set the line width of one particular data set, use DataSet.setLineWidth.
Argument | Default | Description |
w | (Mandatory) | The width of the line in pixels. |
CDLayerMBS.setUseYAxis(axis as CDAxisMBS)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method affects all data sets in the layer. To set the y-axis to use for a particular data set, use DataSet.setUseYAxis.
Argument | Default | Description |
a | (Mandatory) | The y-axis to use when drawing the data sets. |
CDLayerMBS.setUseYAxis2(b as boolean=true)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method affects all data sets in the layer. To set the y-axis to use for a particular data set, use DataSet.setUseYAxis2.
Note: Layer.setUseYAxis is a more general method that can support more than 2 y-axes.
Argument | Default | Description |
b | true | A true value means the secondary y-axis will be used. A false value means the primary y-axis will be used. |
CDLayerMBS.setXData(data as CDArrayMBS)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
In most ChartDirector XY chart layers, when a data set is added, only the y Values for the data points are needed. For example, in a bar layer, you just need to specify the values of the bars (y values). ChartDirector will automatically layout the bars evenly on the x-axis. You can then specify the labels on the x-axis using Axis.setLabels.
In ChartDirector, this type of x-axis scaling is called "enumerated" scale. Please refer to Axis.setLabels for a more detail explanation of "enumerated" scale.
However, in some cases, it may be necessary to specify the x values explicitly. For example, if a chart contains data points that are not evenly distributed on the x-axis, it is necessary to specify the x values explicitly. It is because enumerated scale always assume the data points are distributed evenly on the x- axis. In this case, the setXData method can be used to specify the x values for the data points.
In general, if the data points are evenly distributed on the x-axis, it is recommended enumerated x-scale be used and no x values are necessary. Even the data points are evenly distributed, except that some data points are missing, it is still possible to use enumerated x-scale by using the NoValue constant to represent missing data points.
On the other hand, if the data points are by its nature not evenly distributed, the x values should be provided explicitly using the setXData method.
Each layer only supports one x values series. All data sets in the layer will use the same x value series. If two data sets have different x values, they should be put in two separate layers.
Argument | Default | Description |
xData | (Mandatory) | An array of numbers representing the x value series. |
See also:
- setXData(data() as Double)
- setXData(dates() as date)
- setXData(dates() as dateTime)
- setXData(minValue as Double, maxValue as Double)
Some examples using this method:
- /ChartDirector/RealTime ViewPort
- /ChartDirector/Track Line Web
- /ChartDirector/Track Line with Data Labels Retina
- /ChartDirector/Track Line with Legend Retina
- /ChartDirector/Tracking Cursor/Track Line Web
- /ChartDirector/Tracking Cursor/Track Line with Axis Labels
- /ChartDirector/Tracking Cursor/Track Line with Data Labels
- /ChartDirector/Tracking Cursor/Track Line with Data Labels Retina
- /ChartDirector/Tracking Cursor/Track Line with Legend
- /ChartDirector/Tracking Cursor/Track Line with Legend Retina
CDLayerMBS.setXData(data() as Double)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
In most ChartDirector XY chart layers, when a data set is added, only the y Values for the data points are needed. For example, in a bar layer, you just need to specify the values of the bars (y values). ChartDirector will automatically layout the bars evenly on the x-axis. You can then specify the labels on the x-axis using Axis.setLabels.
In ChartDirector, this type of x-axis scaling is called "enumerated" scale. Please refer to Axis.setLabels for a more detail explanation of "enumerated" scale.
However, in some cases, it may be necessary to specify the x values explicitly. For example, if a chart contains data points that are not evenly distributed on the x-axis, it is necessary to specify the x values explicitly. It is because enumerated scale always assume the data points are distributed evenly on the x- axis. In this case, the setXData method can be used to specify the x values for the data points.
In general, if the data points are evenly distributed on the x-axis, it is recommended enumerated x-scale be used and no x values are necessary. Even the data points are evenly distributed, except that some data points are missing, it is still possible to use enumerated x-scale by using the NoValue constant to represent missing data points.
On the other hand, if the data points are by its nature not evenly distributed, the x values should be provided explicitly using the setXData method.
Each layer only supports one x values series. All data sets in the layer will use the same x value series. If two data sets have different x values, they should be put in two separate layers.
Argument | Default | Description |
xData | (Mandatory) | An array of numbers representing the x value series. |
See also:
CDLayerMBS.setXData(dates() as date)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 9.6 | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No | Desktop, Console & Web |
In most ChartDirector XY chart layers, when a data set is added, only the y Values for the data points are needed. For example, in a bar layer, you just need to specify the values of the bars (y values). ChartDirector will automatically layout the bars evenly on the x-axis. You can then specify the labels on the x-axis using Axis.setLabels.
In ChartDirector, this type of x-axis scaling is called "enumerated" scale. Please refer to Axis.setLabels for a more detail explanation of "enumerated" scale.
However, in some cases, it may be necessary to specify the x values explicitly. For example, if a chart contains data points that are not evenly distributed on the x-axis, it is necessary to specify the x values explicitly. It is because enumerated scale always assume the data points are distributed evenly on the x- axis. In this case, the setXData method can be used to specify the x values for the data points.
In general, if the data points are evenly distributed on the x-axis, it is recommended enumerated x-scale be used and no x values are necessary. Even the data points are evenly distributed, except that some data points are missing, it is still possible to use enumerated x-scale by using the NoValue constant to represent missing data points.
On the other hand, if the data points are by its nature not evenly distributed, the x values should be provided explicitly using the setXData method.
Each layer only supports one x values series. All data sets in the layer will use the same x value series. If two data sets have different x values, they should be put in two separate layers.
Argument | Default | Description |
xData | (Mandatory) | An array of numbers representing the x value series. |
See also:
CDLayerMBS.setXData(dates() as dateTime)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 20.5 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
See also:
CDLayerMBS.setXData(minValue as Double, maxValue as Double)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This method is most useful when two layers contain data at different x axis scale. An example is a line layer with one data point per minute, and another line layer with one data point per 5 minutes.
In the above example, in one hour, the first layer will have 60 data points, while the second layer will have 12 data points. If enumerated x-scale is used, the x-axis will contain 60 positions evenly distributed. The 60 data points in the first layer will corresponds to the 60 positions in the x-axis, which is correct. However, the 12 data points in the second layer will corresponds to the first 12 positions on the x-axis, which is not the desired result.
Instead, the 12 data points in the second layer should corresponds to positions 0, 5, 10, 15, .... A little thought will review that the 12 data points in the second layer should be distributed evenly among positions 0 - 55. The setXData2 method can be used to inform ChartDirector about the scaling used in the second layer.
Argument | Default | Description |
minValue | (Mandatory) | The x value of the first point in a data set. |
maxValue | (Mandatory) | The x value of the last point in the data set. |
See also:
CDLayerMBS.xZoneColor(threshold as Double, belowColor as color, aboveColor as color) as Integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 11.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
See also:
CDLayerMBS.xZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer) as Integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
For example, if a x-zone color is used as the line color in a line layer, the line will switch from one color to another when its passes through a certain value on the x-axis. Similarly, if a x-zone color is used as the fill color in an area layer, the area will switch from one color to another when it passes through a certain value on the x-axis.
The two colors used in a x-zone color can be other dynamic colors. For example, one color could be a solid color, while the other color could be a dash line color (see !BaseChart.dashLineColor). When this x-zone color is as the line color, the line will change from a solid style to a dash line style when the line passes through a certain value on the x-axis
You may create x-zone colors with more than 2 zones by cascading multiple x-zone colors.
Argument | Default | Description |
threshold | (Mandatory) | The x value serving as the threshold for switching between two colors. |
belowColor | (Mandatory) | The color to use when the x-axis value of the pixel is smaller than the threshold. |
aboveColor | (Mandatory) | The color to use when the x-axis value of the pixel is greater than the threshold. |
A 32-bit integer representing the x-zone color.
See also:
CDLayerMBS.yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as boolean=true) as Integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 11.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
See also:
- yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as CDAxisMBS) as Integer
- yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as boolean=true) as Integer
- yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as CDAxisMBS) as Integer
CDLayerMBS.yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as CDAxisMBS) as Integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 11.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
See also:
- yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as boolean=true) as Integer
- yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as boolean=true) as Integer
- yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as CDAxisMBS) as Integer
CDLayerMBS.yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as boolean=true) as Integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
For example, if a y-zone color is used as the fill color in an area layer, the area will switch from one color to another when its value is higher than a certain value on the y-axis.
The two colors used in a y-zone color can be other dynamic colors. You may create y-zone colors with more than 2 zones by cascading multiple y-zone colors.
Argument | Default | Description |
threshold | (Mandatory) | The y value serving as the threshold for switching between two colors. |
belowColor | (Mandatory) | The color to use when the y-axis value of the pixel is smaller than the threshold. |
aboveColor | (Mandatory) | The color to use when the y-axis value of the pixel is greater than the threshold. |
yAxis | nil | The y-axis to use to determine the pixel coordinates of data values. The y-axis may be obtained using XYChart.yAxis, XYChart.yAxis2 or XYChart.addAxis. The default is to use the primary y-axis. |
For backward compatibility, the axis argument can also be a boolean value. A true value means the primary y-axis. A false value means the secondary y-axis.
Return Value
A 32-bit integer representing the y-zone color.
See also:
- yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as boolean=true) as Integer
- yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as CDAxisMBS) as Integer
- yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as CDAxisMBS) as Integer
CDLayerMBS.yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as CDAxisMBS) as Integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | ChartDirector | MBS ChartDirector Plugin | 8.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
For example, if a y-zone color is used as the fill color in an area layer, the area will switch from one color to another when its value is higher than a certain value on the y-axis.
The two colors used in a y-zone color can be other dynamic colors. You may create y-zone colors with more than 2 zones by cascading multiple y-zone colors.
Argument | Default | Description |
threshold | (Mandatory) | The y value serving as the threshold for switching between two colors. |
belowColor | (Mandatory) | The color to use when the y-axis value of the pixel is smaller than the threshold. |
aboveColor | (Mandatory) | The color to use when the y-axis value of the pixel is greater than the threshold. |
yAxis | nil | The y-axis to use to determine the pixel coordinates of data values. The y-axis may be obtained using XYChart.yAxis, XYChart.yAxis2 or XYChart.addAxis. The default is to use the primary y-axis. |
For backward compatibility, the axis argument can also be a boolean value. A true value means the primary y-axis. A false value means the secondary y-axis.
Return Value
A 32-bit integer representing the y-zone color.
See also:
- yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as boolean=true) as Integer
- yZoneColor(threshold as Double, belowColor as color, aboveColor as color, yAxis as CDAxisMBS) as Integer
- yZoneColor(threshold as Double, belowColor as Integer, aboveColor as Integer, yAxis as boolean=true) as Integer
The items on this page are in the following plugins: MBS ChartDirector Plugin.