本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

geobubble

以可视方式呈现特定地理位置的数据值

说明

gb = geobubble(tbl,latvar,lonvar) 创建一个显示在地图上的地理气泡图,用实心圆圈(气泡)表示表 tbl 中指定的地理位置。latvar 是用来指定气泡纬度的表变量(列)。lonvar 是用来指定气泡经度的表变量。默认情况下,所有气泡的大小和颜色都相同。此函数返回 gb,表示 GeographicBubbleChart 对象。要修改此对象,请使用 GeographicBubbleChart 属性 中介绍的属性。

地理气泡图在一个称为底图的地图上显示您的数据。气泡图会设置合理的初始地理范围,以容纳您的所有数据。地图是动态的,也就是说,您可以通过平移底图来查看其他地理位置。您还可以放大和缩小地图,从而更详细地查看不同的地区。当您平移和缩放时,气泡图会更新地图。有关地理气泡图和底图的详细信息,请参阅地理气泡图概述

示例

gb = geobubble(tbl,latvar,lonvar,Name,Value) 使用由一个或多个名称-值对组参数指定的其他选项设置地理气泡图的属性值。有两个关键的属性是 'SizeVariable''ColorVariable',它们用来指定决定气泡大小和颜色的表变量。

gb = geobubble(lat,lon) 创建一个地理气泡图,其中 latlon 指定地理位置。默认情况下,所有气泡的大小和颜色都相同。

示例

gb = geobubble(lat,lon,sizedata) 根据 sizedata 中的数值缩放气泡的区域。

示例

gb = geobubble(lat,lon,sizedata,colordata) 使用 colordata 中的分类数据来确定气泡的颜色。geobubblecolordata 中的每个类别选择一种颜色,如果 colordata 中有任何未定义的元素,则再加上一种颜色。颜色是从包含 7 种标准颜色的有序列表中选取的。在超过七个类别时,颜色会循环重复。若存在未定义的值,则在超过六个类别时即会循环重复。

示例

gb = geobubble(___,Name,Value) 使用一个或多个名称-值对组参数指定地理气泡图的其他选项。请在所有其他输入参数之后指定这些选项。有关属性列表,请参阅 GeographicBubbleChart 属性

gb = geobubble(parent,___) 在由 parent 指定的图窗、面板、选项卡或分块图布局中创建地理气泡图。

示例

全部折叠

以表的形式将海啸数据读入工作区。每一行代表发生的一次海啸。每一列代表各次海啸的一组变量数据,例如位置(纬度和经度)、原因和浪高。

tsunamis = readtable('tsunamis.xlsx');

将表变量中的一个变量转换为分类变量,用来指定气泡的颜色。Cause 变量指定每次海啸发生的原因,例如 'Earthquake'Volcano''Earthquake and Landslide'。将 Cause 变量从字符向量元胞数组转换为分类变量。

tsunamis.Cause = categorical(tsunamis.Cause);

创建一个地理气泡图,在地图上绘制海啸的位置。指定保存位置信息的表变量的名称:LatitudeLongitude。使用 MaxHeight 表变量指定气泡的大小。下面的示例使用 Cause 变量(之前已经转换为分类变量)指定气泡的颜色。

gb = geobubble(tsunamis,'Latitude','Longitude', ...
    'SizeVariable','MaxHeight','ColorVariable','Cause')

gb = 
  GeographicBubbleChart with properties:

              Basemap: 'streets-light'
            MapLayout: 'normal'
          SourceTable: [162×20 table]
     LatitudeVariable: 'Latitude'
    LongitudeVariable: 'Longitude'
         SizeVariable: 'MaxHeight'
        ColorVariable: 'Cause'

  Show all properties

以表的形式将海啸数据读入工作区。每一行代表发生的一次海啸。每一列代表各次海啸的一组变量数据,例如位置(纬度和经度)、原因和浪高。

tsunamis = readtable('tsunamis.xlsx');

创建一个地理气泡图,在地图上绘制海啸的位置。使用 MaxHeight 变量中的数据指定气泡的大小。在下面的示例中,您将数据直接传递给 geobubble。也可以将表的名称传递给 geobubble,然后按表变量名称指定数据。

gb = geobubble(tsunamis.Latitude,tsunamis.Longitude,tsunamis.MaxHeight)

gb = 
  GeographicBubbleChart with properties:

          Basemap: 'streets-light'
        MapLayout: 'normal'
     LatitudeData: [162×1 double]
    LongitudeData: [162×1 double]
         SizeData: [162×1 double]
        ColorData: []

  Show all properties

以表的形式将海啸数据读入工作区。每一行代表发生的一次海啸。每一列代表与各次海啸有关的一组数据,例如每次海啸的原因。

tsunamis = readtable('tsunamis.xlsx');

创建一个分类变量,因为控制气泡颜色的数据必须是分类变量。海啸表变量 Cause 已经按以下七个标准对海啸进行了分类:地震、地震加滑坡、火山、火山加滑坡、滑坡、气象变化和未知原因。将 Cause 变量数据放入一个分类变量中。

cause = categorical(tsunamis.Cause);

创建一个地理气泡图,在地图上绘制海啸的位置。使用气泡大小指示海浪大小,使用气泡颜色指示原因。如果您直接传递数据,而不是指定包含数据的表变量的名称,geobubble 将不会自动为大小和颜色图例添加标题。

gb = geobubble(tsunamis.Latitude,tsunamis.Longitude,tsunamis.MaxHeight,cause)

gb = 
  GeographicBubbleChart with properties:

          Basemap: 'streets-light'
        MapLayout: 'normal'
     LatitudeData: [162×1 double]
    LongitudeData: [162×1 double]
         SizeData: [162×1 double]
        ColorData: [162×1 categorical]

  Show all properties

以表的形式将海啸数据读入工作区。每一行代表发生的一次海啸。每一列代表各次海啸共有的一组变量数据,例如位置(纬度和经度)、原因和最大浪高。

tsunamis = readtable('tsunamis.xlsx');

将表变量中的一个变量转换为分类变量,用来指定气泡的颜色。Cause 变量指定每次海啸发生的原因,例如 'Earthquake''Volcano''Earthquake and Landslide'。将 Cause 变量从字符向量元胞数组转换为分类变量。

colordata = categorical(tsunamis.Cause);

创建一个地理气泡图,在地图上绘制海啸的位置。使用气泡大小指示海浪大小,使用气泡颜色指示海啸原因。还可以使用名称-值对组参数设置底图和标题。

gb = geobubble(tsunamis.Latitude,tsunamis.Longitude,tsunamis.MaxHeight,colordata,'Title','Tsunamis')

gb = 
  GeographicBubbleChart with properties:

          Basemap: 'streets-light'
        MapLayout: 'normal'
     LatitudeData: [162×1 double]
    LongitudeData: [162×1 double]
         SizeData: [162×1 double]
        ColorData: [162×1 categorical]

  Show all properties

使用地理气泡图属性修改图。例如,为大小和颜色图例添加标题。(如果您指定表作为参数,则 geobubble 会使用表变量的名称自动添加图例标题。)

gb.SizeLegendTitle = 'Max Height';
gb.ColorLegendTitle = 'Cause'

gb = 
  GeographicBubbleChart with properties:

          Basemap: 'streets-light'
        MapLayout: 'normal'
     LatitudeData: [162×1 double]
    LongitudeData: [162×1 double]
         SizeData: [162×1 double]
        ColorData: [162×1 categorical]

  Show all properties

输入参数

全部折叠

包含要绘制的数据的表,以表或时间表的形式指定。您可以使用 readtable 函数以表的形式导入数据,也可以使用 table 函数根据工作区变量创建表。您可以使用 timetable 函数根据工作区变量创建时间表。

包含要绘制的数据的表存储在 GeographicBubbleChart 对象的 SourceTable 属性中。

数据类型: table

表示纬度的表变量,指定为下列形式之一:

  • 指定表变量中一个变量名称的字符串标量或字符向量。例如,geobubble(tbl,'Latitude','Longitude')latvar 选择名为 'Latitude' 的变量。

  • 指示表变量索引的数值标量。例如,geobubble(tbl,1,2) 为纬度选择表中的第一个变量。

  • 包含一个 true 元素的逻辑向量。

选定变量存储在 GeographicBubbleChart 对象的 LatitudeVariable 属性中。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string

表示经度的表变量,指定为下列形式之一:

  • 指定表变量中一个变量名称的字符串标量或字符向量。例如,geobubble(tbl,'Latitude','Longitude')lonvar 选择名为 'Longitude' 的变量。

  • 指示表变量索引的数值标量。例如,geobubble(tbl,1,2) 为经度选择表中的第二个变量。

  • 包含一个 true 元素的逻辑向量。

选定变量存储在 GeographicBubbleChart 对象的 LongitudeVariable 属性中。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string

以度为单位的纬度坐标,指定为 [-90 90] 范围内的有限实数数值向量。向量可以包含嵌入的 NaN 值。lat 的大小必须与 lon 相同。

示例: [43.0327 38.8921 44.0435]

数据类型: single | double

以度为单位的经度坐标,指定为有限实数数值向量。向量可以包含嵌入的 NaN 值。lon 的大小必须与 lat 相同。

示例: [-107.5556 -77.0269 -72.5565]

数据类型: single | double

决定气泡大小的数据,指定为有限实数数值向量或标量,或指定为空 ([]) 数组。如果指定向量,则 sizedata 的大小必须与 latlon 相同。如果指定标量值,地理气泡图将通过标量扩展处理该值。sizedata 可以包含 NaN 值。

示例: [99 133 150]

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

决定气泡颜色的数据类别,指定为分类变量。类别通常是数据可归入的分组。

数据类型: categorical

父容器,指定为 FigurePanelTabTiledChartLayout 对象。

名称-值对组参数

指定可选的、以逗号分隔的 Name,Value 对组参数。Name 为参数名称,Value 为对应的值。Name 必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所示。

示例: p = geobubble(tbl,latvar,lonvar,'SizeVariable','MaxHeight','ColorVariable','Cause')

注意

此处列出的地理气泡图属性是常用属性。有关完整列表,请参阅 GeographicBubbleChart 属性

要在其上绘制数据的地图,指定为下表中列出的值之一。其中六幅底图是图块数据集,由 MathWorks® 从公共域数据中派生而来。其中五个底图是由 Esri® 托管的高缩放级别地图。

MATLAB® 包括一个已安装的底图,一个名为 'darkwater' 的双色地图。使用此底图不需要访问 Internet。使用其他底图,包括默认底图 'streets-light',确实需要访问 Internet。

如果您不能随时访问 Internet,可使用附加功能资源管理器将由 MathWorks 托管的底图下载到您的本地系统上。这五个高缩放级别的地图无法下载。有关下载底图和更改本地系统上默认底图的详细信息,请参阅在 MATLAB 中访问底图

由 Esri 托管的五个底图标注了地图数据提供者。当您放大地图时,这些标注信息可能会发生变化,因为不同组织为不同位置提供不同缩放级别的地图数据。边界和区域标签的对齐是我们的数据供应商提供的功能的展示,并不意味着 MathWorks 对此做出背书。

'streets-light'

旨在提供地理上下文同时在浅色背景上突出显示用户数据的地图。

由 Esri 托管。

'satellite'

由高分辨率卫星图像组成的完整全球底图。

由 Esri 托管。

'streets-dark'

旨在提供地理上下文同时在深色背景上突出显示用户数据的地图。

由 Esri 托管。

'topographic'

具有用于描绘地形特征的样式的通用地图。

由 Esri 托管。

'streets'

通用公路图,强调公路和交通网络的准确、清晰样式。

由 Esri 托管。

'landcover'

结合卫星衍生的地表数据、着色地势和海底地势的地图。明亮、自然的调色板适用于主题地图和参考地图。

由 MathWorks 提供。

'grayterrain'

灰色地形图。着色地势强调高山和洼地的微地形。

由 MathWorks 提供。

'colorterrain'

叠加了地表配色的着色地势图。潮湿的低地为绿色,干旱的低地为棕色。

由 MathWorks 提供。

'grayland'

具有灰色陆地区域和白色水域的双色陆地海洋地图。

由 MathWorks 提供。

'bluegreen'

具有浅绿色陆地区域和浅蓝色水域的双色陆地海洋地图。

由 MathWorks 提供。

'darkwater'

具有浅灰色陆地区域和深灰色水域的双色陆地海洋地图。此底图随 MATLAB 一起安装。

由 MathWorks 提供。

 

'none'

空白背景,用经纬度网格、刻度和标签绘制数据。

示例: gx = geoaxes('Basemap','bluegreen')

示例: gx.Basemap = 'bluegreen'

数据类型: char | string

用于确定气泡颜色的表变量,以下列形式之一指定:

  • 指定要用于存储颜色信息的表变量名称的字符串标量或字符向量。例如,geobubble(__,'ColorVariable','Cause') 指定名为 'Cause' 的变量。

  • 指示表变量索引的数值标量。例如,geobubble(__,'ColorVariable',12) 指定表中的第 12 个变量。

  • 包含一个 true 元素的逻辑向量。例如,sizevar = logical([0 0 0 0 0 0 0 0 0 0 0 1]) 指定表中的第 12 个变量。

只有在指定表作为输入时才能使用此属性。与此表变量关联的值必须为分类值。指定颜色变量时,geobubble 将与此变量关联的数据值存储在 ColorData 属性中,并将 ColorData 属性设置为只读。

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string

地图的布局,包括地图本身和修饰元素,指定为下列值之一。

说明图解
'normal'地图以插图形式放置在图的边缘一侧,如 OuterPosition 属性所定义。坐标区标签('Latitude''Longitude')、刻度以及刻度标签均可见。如果设置了 Title 属性值,则图包含一个标题。图例(如果有)显示在地图右侧的外部区域。
'maximized'地图填满由 OuterPosition 属性定义的整个空间。坐标区标签、刻度和刻度标签处于隐藏状态。标题处于隐藏状态,即使设置了 Title 属性也是如此。网格处于隐藏状态,即使 GridVisible 设置为 'on' 也是如此。图例(如果有)显示在地图内部的右上角。

示例: gb = geobubble(__,'MapLayout','maximized')

示例: gb.MapLayout = 'maximized'

数据类型: char | string

用于确定气泡大小的表变量,指定为下列形式之一:

  • 指定要用于存储大小信息的表变量名称的字符串标量或字符向量。例如,geobubble(__,'SizeVariable','MaxHeight') 指定名为 'MaxHeight' 的变量。

  • 指示表变量索引的数值标量。例如,geobubble(__,'SizeVariable',16) 指定表中的第 16 个变量。

  • 包含一个 true 元素的逻辑向量。例如,sizevar = logical([0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1]) 指定表中的第 16 个变量。

只有在指定表作为输入时才能使用此属性。与此表变量关联的值必须为数值类型。如果您指定此变量,geobubble 会将与此变量关联的数据值存储在 'SizeData' 属性中,并将此属性设置为只读。

输出参数

全部折叠

地理气泡图,以 GeographicBubbleChart 对象形式返回。

提示

  • 要以编程方式将焦点转移到地理气泡图,请使用 axes 函数 axes(gb)

在 R2017b 中推出