GeographicBubbleChart Properties

Control geographic bubble chart appearance and behavior

GeographicBubbleChart properties control the appearance and behavior of a GeographicBubbleChart object. By changing property values, you can modify aspects of the chart display. Use dot notation to refer to a particular object and property. The following example specifies the name of the size legend by using the SizeLegendTitle property.

tsunamis = readtable('tsunamis.xlsx');
tsunamis.Cause = categorical(tsunamis.Cause);
figure
gb = geobubble(tsunamis,'Latitude','Longitude', ...
        'SizeVariable','MaxHeight','ColorVariable','Cause', ...
        'Basemap','colorterrain')
geolimits([10 65],[-180 -80])
title 'Tsunamis in North America';
gb.SizeLegendTitle = 'Maximum Height';

Bubble Location

expand all

Latitude coordinates of bubble locations, specified as a real, finite, numeric vector of values in the range [-90,90], or as an empty ([]) array. LatitudeData must be the same size as LongitudeData and can contain NaNs.

Bubbles with latitudes outside the approximate limits [-85 85], beyond which the basemap tiles do not extend, are permissible. However these values are not typically seen unless the map extent is controlled manually using the MapCenter and ZoomLevel properties. Also, bubbles very close to 90 degrees and -90 degrees can never be seen, because they map to infinite or near-infinite y-values.

Data Types: single | double

Table variable used for bubble latitude, specified in one of these forms:

  • A string scalar or character vector specifying the name of the table variable you want to use for latitude. For example, geobubble(__,'LatitudeVariable','Latitude') specifies the variable named 'Latitude'.

  • A numeric scalar indicating the table variable index. For example, geobubble(__,'LatitudeVariable',1) specifies the first variable in the table for latitudes.

  • A logical vector containing one true element.

The values associated with this table variable must be numeric. You can use this property only when specifying a table as input. geobubble stores the value of this variable in the 'LatitudeData' property and sets the 'LatitudeData' property to read-only.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string

Longitude coordinates of bubble locations, specified as a real, finite, numeric vector of values in the range (-Inf,Inf), or as an empty ([]) array. LongitudeData must be the same size as LatitudeData and can contain NaNs.

Data Types: single | double

Table variable used for bubble longitude, specified in one of these forms:

  • A string or character vector specifying the name of the table variable you want to use for longitude information. For example, geobubble(__,'LongitudeVariable','Longitude') specifies the table variable named 'Longitude'.

  • A numeric scalar indicating the table variable index. For example, geobubble(__,'LongitudeVariable',16) specifies the sixteenth variable in the table for longitudes.

  • A logical vector containing one true element.

The values associated with this table variable must be numeric. You can use this property only when specifying a table as input. geobubble stores the value of this variable in the 'LongitudeData' property and sets the 'LongitudeData' property to read-only.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string

Bubble Size

expand all

Minimum and maximum width of bubbles, measured in points, specified as a numeric scalar or a 1-by-2 numeric vector. Values must be non-descending. Use a scalar when you want all the bubbles to have the same (uniform) size. Values must fall within the range [1 100].

Example: [4 10]

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Data controlling bubble size, specified as a numeric vector or scalar in the range (-Inf,Inf), or as an empty ([]) array. If you specify a vector, SizeData must be the same size as LatitudeData and LongitudeData. If you specify a scalar value, the geographic bubble chart treats the value with scalar expansion. sizedata can contain NaNs.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Limits for mapping SizeData values to bubble width, specified as a 1-by-2 vector of real, finite, numeric values, or as an empty ([]) matrix. Values must be non-descending. To create bubbles that are all the same size, specify the same value for each element.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Table variable used to determine bubble size, specified in one of these forms:

  • A string scalar or character vector specifying the name of the table variable you want to use for size information. For example, geobubble(__,'SizeVariable','MaxHeight') specifies the variable named 'MaxHeight'.

  • A numeric scalar indicating the table variable index. For example, geobubble(__,'SizeVariable',16) specifies the sixteenth variable in the table.

  • A logical vector containing one true element. For example, sizevar = logical([0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1]) specifies the 16th variable in the table.

This property can only be used when specifying a table as input. The values associated with this table variable must be of a numeric type. When you specify this variable, geobubble stores the data values associated with this variable in the 'SizeData' property and sets the property to read-only.

Bubble Color

expand all

The BubbleColorList property controls the colors used for the bubbles. The value is an m-by-3 array where each row is an RGB color triplet, where m equals the number categories in the ColorData vector, or the number of categories plus 1 if any elements of ColorData are undefined, or 1 if ColorData is empty. By default, geobubble selects colors from an ordered list of 7 standard colors. If m is greater than 7, the colors repeat cyclically. To change the colors used, use one of the MATLAB colormap functions, such as parula or jet, or specify a custom list of your own RGB values.

Data Types: cell | double

Data controlling bubble color, specified as a categorical vector or as empty array ([]). Bubbles assigned to the same category have the same color on the map. The geographic bubble chart assigns a color to each category, using the colors listed in the BubbleColorList property. The size of ColorData must match LatitudeData and LongitudeData, except when you specify an empty array.

If you use a color legend, the geographic bubble chart displays the category values in the legend. If any of the values contain TeX markup characters, such as an underscore (_), you might see unexpected formatting in your color legend. MATLAB® uses a subset of TeX markup for the text displayed in legends. To use a TeX markup character in regular text, edit the name of the category (using renamecats) and insert the TeX escape character, the backslash (\), before the character you want to include. For information about using TeX markup to add superscripts and subscripts, modify font type and color, and include special characters in the text, see the Interpreter property of the text object.

Data Types: categorical

Table variable used to determine bubble color, specified in one of these forms:

  • A string scalar or character vector specifying the name of the table variable you want to use for color information. For example, geobubble(__,'ColorVariable','Cause') specifies the variable named 'Cause'.

  • A numeric scalar indicating the table variable index. For example, geobubble(__,'ColorVariable',12) specifies the 12th variable in the table.

  • A logical vector containing one true element. For example, sizevar = logical([0 0 0 0 0 0 0 0 0 0 0 1]) specifies the 12th variable in the table.

You can use this property only when specifying a table as input. The values associated with this table variable must be categorical. When you specify the color variable, geobubble stores the data values associated with this variable in the ColorData property and sets the ColorData property to read-only.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string

Labels

expand all

Title of geographic bubble chart, specified as a character vector, cell array of character vectors, scalar string, string array, numeric value, or a categorical value. If you specify this property as a categorical array, MATLAB uses the values in the array, not the categories. You can also use the title function to set this value.

By default, MATLAB® supports a subset of TeX markup for the text you specify. To add superscripts and subscripts, modify the font type and color, and include special characters in the text, use TeX markup. To use a TeX markup character in regular text, such as an underscore (_), insert the TeX escape character the backslash (\), before the character you want to include. For more information, see the Interpreter property of the text object.

Text to display as title of color legend, specified as a character vector, string scalar, string array, cell array of character vectors, numeric value, or categorical value. If you specify this property as a categorical array, MATLAB uses the values in the array, not the categories.

By default, MATLAB® supports a subset of TeX markup for the text you specify. To add superscripts and subscripts, modify the font type and color, and include special characters in the text, use TeX markup. To use a TeX markup character in regular text, such as an underscore (_), insert the TeX escape character, the backslash (\), before the character you want to include. For more information, see the Interpreter property of the text object.

Data Types: char | cell | string | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Size legend title, specified as a character vector, string scalar, string array, cell array of character vectors, numeric value, or categorical value. If you specify this property as a categorical array, MATLAB uses the values in the array, not the categories.

By default, MATLAB® supports a subset of TeX markup for the text you specify. To add superscripts and subscripts, modify the font type and color, and include special characters in the text, use TeX markup. To use a TeX markup character in regular text, such as an underscore (_), insert the TeX escape character the backslash (\), before the character you want to include. For more information, see the Interpreter property of the text object.

Visibility of bubble size and color legends, specified as 'on' or 'off' or the logical values true or false. You can also toggle the visibility of the legends by using the legend function.

Data Types: char | string | logical

Font

expand all

Font used in the geographic bubble chart, specified as a string scalar or character vector. To display and print properly, the font name must be a font that your system supports. The default font depends on the specific operating system and locale. To use a fixed-width font that looks good in any locale, use 'FixedWidth'. The 'FixedWidth' value relies on the root FixedWidthFontName property. Setting the root FixedWidthFontName property causes an immediate update of the display to use the new font.

Example: 'Cambria'

Data Types: char | string

Font size used in geographic bubble chart, specified as a real, finite, positive, numeric scalar. The value is in point units, where one point equals 1/72 inches.

Map

expand all

Map on which to plot data, specified as one of the values listed in the table. Six of the basemaps are tiled data sets that MathWorks® derives from public-domain data. Five of the basemaps are high-zoom-level maps hosted by Esri®.

MATLAB® includes one installed basemap, a two-tone map named 'darkwater'. Use of this basemap does not require Internet access. Use of the other basemaps, including the default basemap 'streets-light', does require Internet access.

If you do not have consistent access to the Internet, you can download the basemaps hosted by MathWorks onto your local system by using the Add-On Explorer. The five high-zoom-level maps are not available for download. For more about downloading basemaps and changing the default basemap on your local system, see Access Basemaps in MATLAB.

The five basemaps hosted by Esri include attributions that give credit to the provider of the map data. This attribution can change as you zoom in on a map because different organizations contribute map data at different zoom levels for different localities. Alignment of boundaries and region labels are a presentation of the feature provided by our data vendors and does not imply endorsement by MathWorks.

'streets-light'

Map designed to provide geographic context while highlighting user data on a light background.

Hosted by Esri.

'satellite'

Full global basemap composed of high-resolution satellite imagery.

Hosted by Esri.

'streets-dark'

Map designed to provide geographic context while highlighting user data on a dark background.

Hosted by Esri.

'topographic'

General-purpose map with styling to depict topographic features.

Hosted by Esri.

'streets'

General-purpose road map that emphasizes accurate, legible styling of roads and transit networks.

Hosted by Esri.

'landcover'

Map that combines satellite-derived land cover data, shaded relief, and ocean-bottom relief. The light, natural palette is suitable for thematic and reference maps.

Provided by MathWorks.

'grayterrain'

Terrain map in shades of gray. Shaded relief emphasizes both high mountains and micro-terrain found in lowlands.

Provided by MathWorks.

'colorterrain'

Shaded relief map blended with a land cover palette. Humid lowlands are green and arid lowlands are brown.

Provided by MathWorks.

'grayland'

Two-tone, land-ocean map with gray land areas and white water areas.

Provided by MathWorks.

'bluegreen'

Two-tone, land-ocean map with light green land areas and light blue water areas.

Provided by MathWorks.

'darkwater'

Two-tone, land-ocean map with light gray land areas and dark gray water areas. This basemap is installed with MATLAB.

Provided by MathWorks.

 

'none'

Blank background that plots your data with a latitude-longitude grid, ticks, and labels.

Example: gx = geoaxes('Basemap','bluegreen')

Example: gx.Basemap = 'bluegreen'

Data Types: char | string

Table containing data to be plotted, specified as a table.

Data Types: table

Visibility of the latitude and longitude lines on the map, specified as 'on' or 'off', or the logical values true or false. You can also use the grid function to toggle grid visibility.

Data Types: logical | char | string

This property is read-only.

Latitude limits of map, specified as a 1-by-2 vector of real, finite values of the form [southern_limit northern_limit] in the range [-90,90]. To set latitude limits use the geolimits function.

Data Types: double

This property is read-only.

Longitude limits of map, specified as a 1-by-2 vector of real, finite values of the form [western_limit eastern_limit]. Values must be in the range (-Inf, Inf). To set longitude limits use the geolimits function.

Example: [-100 100]

Data Types: double

Center point of map in latitude and longitude, specified as a two-element vector of real, finite values of the form [center_latitude center_longitude]. Values must be in the range [(-90,90),(-Inf, Inf)].

Example: [38.6292 -95.2520]

Data Types: single | double

Layout of map, including insets and decorations, specified as either of the following.

ValueDescriptionIllustration
'normal'Map is inset from the edges of the chart, as defined by its OuterPosition property. Axes labels ('Latitude' and 'Longitude'), ticks, and tick labels are visible. If the Title property value is set, the chart includes a title. Legends, if present, appear outside and to the right of the map.
'maximized'Map fills the entire space, defined by the OuterPosition property. Axes labels, ticks, and tick labels are hidden. The title is hidden, even if the Title property is set. The grid is hidden, even if GridVisible is set to 'on'. Legends, if present, appear within the map, toward the upper-right corner.

Example: gb = geobubble(__,'MapLayout','maximized')

Example: gb.MapLayout = 'maximized'

Data Types: char | string

Visibility of the scale bar on the map, specified as 'on' or 'off', or the logical values true or false.

Data Types: logical | char | string

Magnification level of map, specified as a real, finite, numeric scalar between 0 and 25, inclusive. The value is a base 2 logarithmic map scale. Increasing the ZoomLevel value by 1 doubles the map scale.

Data Types: single | double

Position

expand all

Position property to hold constant when adding, removing, or changing decorations, specified as one of the following values:

  • 'outerposition' — The OuterPosition property remains constant when you add, remove, or change decorations such as a title or an axis label. If any positional adjustments are needed, MATLAB adjusts the InnerPosition property.

  • 'innerposition' — The InnerPosition property remains constant when you add, remove, or change decorations such as a title or an axis label. If any positional adjustments are needed, MATLAB adjusts the OuterPosition property.

The following figure shows the innerposition and outerposition definitions for a geographic bubble chart. innerposition does not include the title or axis labels.

Example: gb.ActivePositionProperty = 'outerposition'

Note

Setting this property has no effect when the parent container is a TiledChartLayout.

Inner size and position of the geographic bubble chart within the parent container (typically a figure, panel, or tab), returned as a four-element vector of the form [left bottom width height]. The inner position does not include the title or axis labels.

  • The left and bottom elements define the distance from the lower left corner of the container to the lower left corner of the geographic bubble chart.

  • The width and height elements are the geographic bubble chart dimensions.

For an illustration, see ActivePositionProperty.

Note

Setting this property has no effect when the parent container is a TiledChartLayout.

Size and position of the geographic bubble chart within its parent, specified as a four-element numeric vector of the form [left bottom width height]. The default value of [0 0 1 1] includes the whole interior of the container.

For an illustration, see ActivePositionProperty.

Note

Setting this property has no effect when the parent container is a TiledChartLayout.

Inner size and position of the geographic bubble chart within the parent container (typically a figure, panel or tab) returned as a four-element vector of the form [left bottom width height]. This property is equivalent to the InnerPosition property.

Note

Setting this property has no effect when the parent container is a TiledChartLayout.

Position units, specified as one of these values.

UnitsDescription
'normalized' (default)Normalized with respect to the container, which is typically the figure or a panel. The lower left corner of the container maps to (0,0), and the upper right corner maps to (1,1).
'inches'Inches
'centimeters'Centimeters
'characters'

Based on the default uicontrol font of the graphics root object:

  • Character width = width of letter x.

  • Character height = distance between the baselines of two lines of text.

'points'Typography points. One point equals 1/72 inch.
'pixels'

Pixels.

Starting in R2015b, distances in pixels are independent of your system resolution on Windows® and Macintosh systems:

  • On Windows systems, a pixel is 1/96th of an inch.

  • On Macintosh systems, a pixel is 1/72nd of an inch.

On Linux® systems, the size of a pixel is determined by your system resolution.

When specifying the units as a name-value pair during object creation, you must set the Units property before specifying the properties that you want to use these units, such as OuterPosition.

Layout options, specified as a TiledChartLayoutOptions object. This property specifies options when the chart is a child of a tiled chart layout. Use this property to position the chart within the layout by setting the Tile and TileSpan properties on the TiledChartLayoutOptions object.

For example, this code places chart c in the third tile of a tiled chart layout.

c.Layout.Tile = 3;

To make the chart span multiple tiles, specify the TileSpan property as a two-element vector. For example, this chart spans 2 rows and 3 columns of tiles.

c.Layout.TileSpan = [2 3];

If the chart is not a child of a tiled chart layout (for example, if it is a child of a figure or panel), then this property is empty and has no effect.

Visibility of the geographic bubble chart, specified as 'on' or 'off' or as the logical values true or false.

Parent/Child

expand all

Parent container, specified as a Figure, Panel, Tab, or TiledChartLayout object.

Introduced in R2017b