# 3.7.5.33 Layer.CMap

LabTalk Object Type:

window

The cmap object is a sub-object of the layer object. It controls the number of color scale color levels, the Z values and the colors for all scale levels (including "in excess of", "less than" and "missing").

## Properties:

Property Access Description
numeric

Color to represent Z values in excess of zMax. Example:

layer.cmap.colorAbove=0;

Sets colorAbove to Black (Origin's 0th color).

numeric

Color to represent Z values below zMin. Example:

layer.cmap.colorBelow=17;

Sets colorBelow to White (Origin's 17th color).

numeric

Color to represent highest Z value range. Example:

layer.cmap.colorHigh=1;

Sets colorHigh to Red (Origin's 1st color).

numeric

Color to represent lowest Z value range. Example:

layer.cmap.colorlow=3;

Sets colorLow to Blue (Origin's 3rd color).

numeric

Color to represent missing Z values. Example:

layer.cmap.colormiss=10;

Sets colorMiss to Wine (Origin's 10th color).

numeric

Fill color mixing mode.
0 = limited mixing.
1 = introducing other colors in mixing. Example:

layer.cmap.colormixmode=1;

Sets colorMixMode to use "Introduce Other Colors in Mixing."

numeric

The nth color, where n is 1 to numColors. Example:

layer.cmap.color4=2;

Sets the color for the 4th level to Green (Origin's 4th color).

layer.cmap.firstLevel

Minimum Origin Version Required: 8.5.0

numeric

The first major level.

layer.cmap.inc

numeric

Set/Get the increment between color levels in the palette. Example:

layer.cmap.inc=1;     // Set increment to 1

Setting inc turns off numMajorLevels selection.

numeric

Show/Hide the nth label. Example:

layer.cmap.label1=1;  // Show label 1
layer.cmap.label2=0;  // Hide label 2
numeric

Show/Hide a label corresponding to values above the color scale. Example:

layer.cmap.labelAbove=1;    // Show a label above the color scale
layer.cmap.labelAbove=0;    // Hide a label above the color scale
numeric

Show/Hide the line at the nth level. Example:

layer.cmap.line1=1;  // Show line at level 1
layer.cmap.line2=0;  // Hide line at level 2
numeric

Show/Hide a line above the color scale. Example:

layer.cmap.LineAbove=1;  // Show the line above the color scale
layer.cmap.LineAbove=0;  // Hide the line above the color scale
numeric

Change the color of the nth line. Example:

layer.CMap.LineColor1 = 0;   // Change the line color at level 1
layer.CMap.LineColor2 = 1;   // Change the line color at level 2
numeric

Change the color of the above line. Example:

layer.CMap.LineColorAbove = 1;   // Change the color of the above line
numeric

Change the line style of the nth line.

Line style type:

• 0 or 1 = solid
• 2 = dash
• 3 = dot
• 4 = dash dot
• 5 = dash dot dot
• 6 = short dash
• 7 = short dot
• 8 = short dash dot

Example:

layer.CMap.LineStyle1 = 0.5;   // Change the line style at level 1
layer.CMap.LineStyle2 = 1.0;   // Change the line style at level 2
numeric

Change the line style of the above line.

Line style type:

• 0 or 1 = solid
• 2 = dash
• 3 = dot
• 4 = dash dot
• 5 = dash dot dot
• 6 = short dash
• 7 = short dot
• 8 = short dash dot

Example:

layer.CMap.LineStyleAbove = 5;   // Change the line style of the above line
numeric

Change the line width of the nth line. Example:

layer.CMap.LineWidth1 = 0.5;   // Change the line width at level 1
layer.CMap.LineWidth2 = 1.0;   // Change the line width at level 2
numeric

Change the line width of the above line. Example:

layer.CMap.LineWidthAbove = 1.5;   // Change the line width of the above line
layer.cmap.numColors

numeric

The number of color levels. Example:

layer.cmap.numcolors=8;

Use 8 color levels.

layer.cmap.numMajorLevels

numeric

The number of major color levels. Example:

layer.cmap.numMajorLevels=5;

Setting numMajorLevels turns off inc selection.

layer.cmap.numMinorLevels

numeric

The number of minor color levels. Example:

layer.cmap.numMinorLevels=0;

Use 0 minor color levels.

layer.cmap.palette$Read/write, string Specify the color palette. Example: layer.cmap.palette$ = ;  // Return color palette used
string

If value=1, link the color filling to the selected palette.

numeric

If value=1, Flip the order of colors in the selected palette and map it to the existed color level.

numeric

If value=1, the colors in the palette will be repeated or skipped to n, where n is the number of color map levels in the input graph layer. If this checkbox is clear and n is less than 256, only the first n colors in the palette will be used. If the checkbox is clear and n is more than 256, the entire set of colors in the palette will be repeated as many times as needed.

layer.cmap.type

numeric

Color map scale type.

• 0 or 1 = linear
• 2 = log10
• 3 = probability
• 4 = probit
• 5 = reciprocal
• 6 = offset reciprocal
• 7 = logit
• 8 = ln
• 9 = log2

Example:

layer.cmap.type=2;    // Log10 scale
layer.cmap.zAbove

(9.0 SR0)

numeric

The maximum value of the color scale. By default, the zAbove value = the maximum value of the colormap.

layer.cmap.zAbove=; //Get the maximun value of the color scale

If we use layer.cmap.zN to set the new Z value for the Nth level and that value exceeds the origin maximun Z value, you can use this script to increase the range.

layer.cmap.zAbove=100; //Set the maximun value of the color scale to 100
layer.cmap.zMax

numeric

The maximum Z value for colorHigh. Example:

layer.cmap.zmax=50;

Sets zMax (the upper end of the scale) to 50.

layer.cmap.zMin

numeric

The minimum Z value for colorLow. Example:

layer.cmap.zmin=0;

Sets zMin (the lower end of the scale) to 50.

numeric

The Z value assigned to missing Z values. Example:

layer.cmap.zmissing=-1;

Use a value of -1 for zMissing.

numeric

The nth Z level, where n is 1 to numColors. Example:

layer.cmap.z4=22.5;

Sets the minimum Z value for the 4th level to 22.5.

 Note: When changing the following properties, you should call layer.cmap.SetLevels() to reset the color map, and then call layer.cmap.updateScale() to redraw the graph. Including: layer.cmap.zMax layer.cmap.zMin layer.cmap.numMajorLevels layer.cmap.numMinorLevels layer.cmap.inc layer.Cmap.numColors layer.Cmap.firstLeveland layer.cmap.type layer.cmap.numColors = N; is equivalent to layer.cmap.numMajorLevels = N; layer.cmap.numMinorLevels = 0;

## Methods:

Method Description
layer.cmap.delete(n)

(9.0 SR0)

Delete the nth level value. (n=1,2,...numColors).

layer.cmap.fill(method)

Set the fill colors.

• method = 1, fill the levels with a linear mix of the specified minimum and maximum fill level colors.
• method = 2, Origin automatically introduce complementary colors into the mix to fill the levels.
layer.cmap.insert(n)

(9.0 SR0)

Insert a level value between the nth level and the previous level. (n=1,2,...numColors+1).

Load the color maps (*.pal or *.xml file) to the contour graph.

• file, the location of the file to be loaded. If it is specified with only file name but without a full path, it will try to load the file from User Files Folder.
• option, not used currently.
layer.cmap.save(file, option=0)

Save the color maps as *.pal or *.xml file. The *.xml file will save both color and Z level values, but the *.pal file only save color values.

• file, the name of file to be saved. If it is specified with only file name but without a full path, the file will be saved to User Files Folder.
• option, not used currently.
layer.cmap.setLevels(method)

Set color levels.

• method is Null (Not specified):
Use the prepared color map settings, like zmin, zmax, etc., and the Original colormap level options, like increment, major levels, etc., to update the colormap.

Minimum Origin Version Required: 8.5.0

• method = 0:
Update colormap by Origin default settings. That is:
• Reset From/To to be minimum or maximum of Z values;
• Reset scale type to be Linear;
• Reset the color from Blue to Red;
• method = 1:
Reset the color levels using zmin, zmax, type, numMajorLevels and numMinorLevels.
• method = 2:
Reset the color levels using zmin, zmax, type, inc and numMinorLevels.
layer.cmap.setZLevels(dataset, n)

(9.0 SR0)

Set the z level values, starting from the nth level.

Restriction of the dataset:

• The size of dataset must be <=numColors+1
• The size of dataset + n must be <=numColors+1
• The dataset must be strictly increasing
layer.cmap.showLabels(method)

Control the visibility of contour labels.

• method = 1, show the labels only on the major levels.
• method = 2, show all contour labels.
• method = 3, hide all contour labels.
layer.cmap.showLines(method)

Control the visibility of contour lines.

• method = 1, show the lines only on the major levels.
• method = 2, show all contour lines.
• method = 3, hide all contour lines.

Check if the color map setting is valid, if so, redraw the graph. Same as doc -uw.

## Examples:

The following script shows how to set color map properties and apply the settings.

win -t mat;
matrix -v i;
run.section(Plot3D,ColorMap);
sec -p 1;
layer.cmap.zmax=10;
sec -p 1;
layer.cmap.SetLevels();
sec -p 1;
layer.cmap.updateScale();