Main Content

Line Properties

Geographic primitive line appearance and behavior

Since R2020a

Line properties control the appearance and behavior of a Line object. By changing property values, you can modify certain aspects of the line plot.

uif = uifigure;
g = geoglobe(uif);
p = geoplot3(g,51.5074,0.1900,200)
p.Marker = 'o';
p.LineWidth = 2;


expand all

Line color, specified as an RGB triplet, a hexadecimal color code, a color name, or a short name.

RGB triplets and hexadecimal color codes are useful for specifying custom colors.

  • An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1]; for example, [0.4 0.6 0.7].

  • A hexadecimal color code is a character vector or a string scalar that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Thus, the color codes "#FF8800", "#ff8800", "#F80", and "#f80" are equivalent.

Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.

Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB® uses in many types of plots.

RGB TripletHexadecimal Color CodeAppearance
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

Example: 'blue'

Example: [0 0 1]

Example: '#0000FF'

Line style, specified as one of these options:

Line StyleDescriptionResulting Line
'-'Solid line (default)

Sample of solid line

'none'No lineNo line

Line width, specified as a positive value in points, where 1 point = 1/72 of an inch. If the line has markers, then the line width also affects the marker edges.

The line width cannot be thinner than the width of a pixel. If you set the line width to a value that is less than the width of a pixel on your system, the line displays as one pixel wide.

Series index, specified as a positive integer. This property is useful for reassigning the colors of several Line objects so that they match each other. By default, the SeriesIndex property of a line object is a number that corresponds to the object's order of creation, starting at 1.

MATLAB uses the number to calculate indices for assigning color when you call plotting functions. The indices refer to the rows of the arrays stored in the ColorOrder property of the parent object.

MATLAB automatically updates the color of the Line object when you change its SeriesIndex, or when you change the ColorOrder property on the parent object. However, the following conditions must be true for the changes to have any effect:

  • The SeriesIndex property on the Line object is greater than 0.

  • The NextSeriesIndex property on the parent object is greater than 0.


expand all

Marker symbol, specified as 'none' or 'o'. By default, the line does not display markers. Specify 'o' to display circle markers at each data point or vertex.

Markers do not tilt or rotate as you navigate the globe.

Indices of data points at which to display markers, specified as a vector of positive integers. If you do not specify the indices, then MATLAB displays a marker at every data point.


To see the markers, you must also specify a marker symbol.

Example: geoplot3(g,lat,lon,h,'-o','MarkerIndices',[1 5 10]) displays a circle marker at the first, fifth, and tenth data points.

Example: geoplot3(g,lat,lon,h,'-o','MarkerIndices',1:3:length(lat)) displays a circle marker every three data points.

Example: geoplot3(g,lat,lon,h,'Marker','o','MarkerIndices',5) displays one circle marker at the fifth data point.

Marker size, specified as a positive value in points, where 1 point = 1/72 of an inch.

Coordinate Data

expand all

Latitude values, specified as a vector. LatitudeData and LongitudeData must have the same size.

Longitude values, specified as a vector. LatitudeData and LongitudeData must have the same size.

Height values, specified as a scalar or vector. If HeightData is a scalar, then its value is applied to every element in LatitudeData and LongitudeData. If HeightData is a vector, it must be the same size as LatitudeData and LongitudeData.

Height reference, specified as one of these values:

  • 'geoid' – Height values are relative to the geoid (mean sea level).

  • 'terrain' – Height values are relative to the ground.

  • 'ellipsoid' – Height values are relative to the WGS84 reference ellipsoid.

For more information about terrain, geoid, and ellipsoid height, see Find Ellipsoidal Height from Orthometric and Geoid Height.


expand all

State of visibility, specified as 'on' or 'off', or as numeric or logical 1 (true) or 0 (false). A value of 'on' is equivalent to true, and 'off' is equivalent to false. Thus, you can use the value of this property as a logical value. The value is stored as an on/off logical value of type matlab.lang.OnOffSwitchState.

  • 'on' — Display the object.

  • 'off' — Hide the object without deleting it. You still can access the properties of an invisible object.


expand all

Parent, specified as a GeographicGlobe object.

The object has no children. You cannot set this property.

Visibility of the object handle in the Children property of the parent, specified as one of these values:

  • 'on' — Object handle is always visible.

  • 'off' — Object handle is invisible at all times. This option is useful for preventing unintended changes by another function. Set the HandleVisibility to 'off' to temporarily hide the handle during the execution of that function.

  • 'callback' — Object handle is visible from within callbacks or functions invoked by callbacks, but not from within functions invoked from the command line. This option blocks access to the object at the command line, but permits callback functions to access it.

If the object is not listed in the Children property of the parent, then functions that obtain object handles by searching the object hierarchy or querying handle properties cannot return it. Examples of such functions include the get, findobj, gca, gcf, gco, newplot, cla, clf, and close functions.

Hidden object handles are still valid. Set the root ShowHiddenHandles property to 'on' to list all object handles regardless of their HandleVisibility property setting.


expand all

Type of graphics object, returned as 'line'. Use this property to find all objects of a given type within a plotting hierarchy, for example, searching for the type using findobj.

Object identifier, specified as a character vector or string scalar. You can specify a unique Tag value to serve as an identifier for an object. When you need access to the object elsewhere in your code, you can use the findobj function to search for the object based on the Tag value.

User data, specified as any MATLAB array. For example, you can specify a scalar, vector, matrix, cell array, character array, table, or structure. Use this property to store arbitrary data on an object.

If you are working in App Designer, create public or private properties in the app to share data instead of using the UserData property. For more information, see Share Data Within App Designer Apps.

Version History

Introduced in R2020a

See Also