mcpField
S
syncfusion-aspnetcore-maps

syncfusion-aspnetcore-maps

github.com/syncfusion开发0107 次安装3 周前更新
代码仓库

关于 syncfusion-aspnetcore-maps

面向 ASP.NET Core 开发者的 Syncfusion Maps 实现指南,用于构建交互式地理可视化。内容涵盖图层、数据绑定、地图交互及地图提供商配置。

主要功能

  1. 01GeoJSON 图层与数据绑定
  2. 02标记、气泡和标签
  3. 03颜色映射与图例
  4. 04缩放、平移和选择
  5. 05地图提供商配置
  6. 06导出与无障碍功能指南

适用场景

  1. 01构建区域销售仪表板
  2. 02标注门店和兴趣点
  3. 03可视化人口或选举数据
  4. 04展示路线和天气地图

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/syncfusion/aspnetcore-ui-components-skills --skill syncfusion-aspnetcore-maps

安装后在 Claude Code 中输入/syncfusion-aspnetcore-maps确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
annotations.md
api-reference.md
bubbles.md
color-mapping.md
data-binding.md
data-labels.md
getting-started.md
layers-and-geojson.md
legend.md
map-providers.md
markers.md
user-interactions.md

详细介绍

实现 Syncfusion Maps for ASP.NET Core

Syncfusion Maps 组件是一款功能强大的工具,可使用可缩放矢量图形(SVG)可视化地理数据。它支持 GeoJSON 数据、多图层、地图提供商(Bing、Azure、OpenStreetMap),以及缩放、平移、工具提示和选择等丰富的交互功能。

目录

适用场景

在以下情况下使用 Syncfusion Maps 组件:

  • 可视化地理数据 - 在交互式地图上显示国家、州或区域数据
  • 创建分级统计地图 - 使用颜色映射展示各区域的数据分布
  • 绘制位置标记 - 显示兴趣点、办公室、商店或自定义位置
  • 渲染气泡地图 - 在地理位置上使用按大小区分的气泡可视化定量数据
  • 集成地图服务提供商 - 使用 Bing Maps、Azure Maps 或 OpenStreetMap 作为底图
  • 显示自定义形状 - 为特定区域渲染自定义 GeoJSON 形状
  • 构建交互式仪表板 - 创建可缩放、可平移并支持工具提示和选择的地图
  • 显示导航路线 - 显示连接不同位置的导航线
  • 叠加注释 - 在地图上添加自定义 HTML/文本注释
  • 创建多图层可视化 - 在单张地图上组合多个数据图层

组件概述

主要功能:

  • 📍 多图层 - 支持无限数量的图层和子图层,且可独立配置
  • 🗺️ GeoJSON 支持 - 加载并渲染自定义地理形状
  • 🌐 地图服务提供商 - 集成 Bing Maps、Azure Maps 和 OpenStreetMap
  • 🎨 颜色映射 - 使用等值、范围和去饱和度配色方案可视化数据
  • 📌 标记和气泡 - 使用可自定义标记和按大小区分的气泡绘制位置
  • 🏷️ 数据标签 - 通过智能定位显示形状名称和数据值
  • 🎯 交互功能 - 支持缩放、平移、工具提示、选择和高亮显示
  • 📊 图例 - 为颜色映射、标记和气泡提供交互式图例
  • ✏️ 注释 - 在特定坐标处叠加自定义 HTML
  • 🌍 投影 - 支持 6 种地图投影类型
  • 🖨️ 导出 - 将地图打印并导出为 PNG、JPEG、SVG、PDF 格式
  • ♿ 无障碍访问 - 符合 WCAG 标准,支持键盘导航和屏幕阅读器

文档与导航指南

入门与安装

📄 阅读: references/getting-started.md

当用户需要:

  • 首次设置 Maps 组件
  • 安装 NuGet 包并配置依赖项
  • 添加标记帮助器和脚本引用
  • 使用 GeoJSON 数据创建基本地图
  • 了解最低配置要求
图层与 GeoJSON 数据

📄 阅读: references/layers-and-geojson.md

当用户需要:

  • 了解地图图层架构
  • 使用 GeoJSON 格式和自定义形状
  • 添加多个图层或子图层
  • 从文件或 URL 加载 GeoJSON
  • 配置图层可见性和顺序
  • 处理特定于图层的设置
数据绑定与数据填充

📄 阅读: references/data-binding.md

当用户需要:

  • 将数据源绑定到地图形状
  • 配置 ShapeDataPath 和 ShapePropertyPath
  • 将数据记录与地理形状匹配
  • 绑定来自 JSON、数据库或 API 的数据
  • 动态更新数据
  • 转换数据以用于可视化
标记

📄 阅读: references/markers.md

当用户需要:

  • 向地图添加位置标记
  • 使用不同类型的标记(Circle、Image、Letter、Template)
  • 自定义标记外观(大小、颜色、边框)
  • 使用纬度/经度定位标记
  • 添加标记工具提示和事件
  • 实现标记聚类
  • 创建自定义标记模板
气泡

📄 阅读: references/bubbles.md

当用户需要:

  • 在地图上创建气泡可视化
  • 根据数据值设置气泡大小
  • 配置气泡颜色和不透明度
  • 设置气泡半径的最小值和最大值
  • 添加气泡工具提示
  • 实现多个气泡集
  • 处理气泡选择
数据标签

📄 阅读: references/data-labels.md

适用于用户需要:

  • 在地图形状上显示标签
  • 配置标签位置和对齐方式
  • 使用智能标签模式(Trim、Hide、None)
  • 自定义标签字体和样式
  • 创建基于模板的标签
  • 处理标签交叉
  • 为标记和气泡添加标签
颜色映射

📄 阅读: references/color-mapping.md

适用于用户需要:

  • 根据数据为形状应用颜色
  • 配置等值颜色映射(值到颜色)
  • 设置范围颜色映射(最小值-最大值范围)
  • 使用去饱和度颜色映射(渐变不透明度)
  • 创建分级设色地图
  • 定义自定义调色板
  • 处理无障碍访问和对比度
图例

📄 阅读: references/legend.md

适用于用户需要:

  • 为地图添加图例
  • 配置图例位置和对齐方式
  • 启用交互式图例(切换、高亮)
  • 自定义图例形状和文本
  • 为颜色映射创建图例
  • 为标记和气泡添加图例
  • 为大量项目实现图例分页
注释

📄 阅读: references/annotations.md

适用于用户需要:

  • 向地图添加自定义 HTML 内容
  • 在特定坐标放置注释
  • 创建文本或基于模板的注释
  • 设置注释样式和对齐方式
  • 处理注释的 z-index 和图层
  • 添加动态注释
  • 创建响应式注释
用户交互

📄 阅读: references/user-interactions.md

适用于用户需要:

  • 启用缩放(鼠标滚轮、捏合、工具栏)
  • 配置平移功能
  • 使用自定义模板添加工具提示
  • 实现形状选择和多选
  • 启用悬停高亮
  • 处理点击事件
  • 添加位置之间的导航线
  • 设置缩放级别和限制
地图提供商集成

📄 阅读: references/map-providers.md

适用于用户需要:

  • 集成 Bing Maps(道路、航拍、混合)
  • 使用 API 密钥设置 Azure Maps
  • 使用 OpenStreetMap(OSM)切片
  • 配置自定义切片服务器
  • 将提供商与 GeoJSON 图层结合使用
  • 处理提供商身份验证
  • 比较提供商的功能和限制
高级功能

适用于用户需要:

  • 使用自定义数据渲染多边形
  • 添加带箭头的导航线
  • 将地图打印或导出为图像/PDF
  • 实现国际化(i18n)
  • 配置本地化(l10n)
  • 启用无障碍功能
  • 实现状态持久化
  • 使用编程方法
  • 优化性能
  • 从 EJ1 迁移到 EJ2

快速入门示例

使用 GeoJSON 和颜色映射的基本地图
@using Newtonsoft.Json
@using Syncfusion.EJ2.Maps

@{
    // Load GeoJSON data
    string geoJson = System.IO.File.ReadAllText("wwwroot/scripts/MapsData/WorldMap.json");
    var worldMapData = JsonConvert.DeserializeObject(geoJson);
    
    // Load data source
    string dataJson = System.IO.File.ReadAllText("wwwroot/scripts/MapsData/population.json");
    var populationData = JsonConvert.DeserializeObject(dataJson);
    
    // Define color mapping
    var colorMapping = new List<MapsColorMapping> {
        new MapsColorMapping { From = 0, To = 100000000, Color = "#C6E7F0", Label = "< 100M" },
        new MapsColorMapping { From = 100000000, To = 500000000, Color = "#6AB7D6", Label = "100M - 500M" },
        new MapsColorMapping { From = 500000000, To = 1500000000, Color = "#1A7FA0", Label = "> 500M" }
    };
    
    var propertyPath = new[] { "name" };
}

<ejs-maps id="maps" height="600px">
    <e-maps-titlesettings text="World Population by Country">
        <e-titlesettings-textstyle size="16px" fontWeight="500"></e-titlesettings-textstyle>
    </e-maps-titlesettings>
    
    <e-maps-legendsettings visible="true" position="Bottom"></e-maps-legendsettings>
    
    <e-maps-layers>
        <e-maps-layer shapeData="worldMapData" 
                      dataSource="populationData"
                      shapeDataPath="Country" 
                      shapePropertyPath="propertyPath">
            <e-layersettings-shapesettings 
                fill="#E5E5E5" 
                colorValuePath="Population"
                colorMapping="colorMapping">
            </e-layersettings-shapesettings>
            
            <e-layersettings-tooltipsettings visible="true" valuePath="Country" template="#tooltipTemplate">
            </e-layersettings-tooltipsettings>
        </e-maps-layer>
    </e-maps-layers>
</ejs-maps>

<div id="tooltipTemplate" style="background: white; padding: 12px; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.15);">
    <h4 style="margin: 0 0 8px 0; color: #333;">${Country}</h4>
    <div style="font-size: 14px;">
        <div><strong>Population:</strong> ${Population}</div>
        <div><strong>Capital:</strong> ${Capital}</div>
    </div>
</div>
带标记的地图
@using Newtonsoft.Json
@using Syncfusion.EJ2.Maps

@{
    var worldMapData = JsonConvert.DeserializeObject(System.IO.File.ReadAllText("wwwroot/scripts/MapsData/WorldMap.json"));
    
    var cities = new[]
    {
        new { Name = "New York", Latitude = 40.7128, Longitude = -74.0060, Population = "8.4M" },
        new { Name = "Tokyo", Latitude = 35.6762, Longitude = 139.6503, Population = "13.9M" },
        new { Name = "London", Latitude = 51.5074, Longitude = -0.1278, Population = "9.0M" },
        new { Name = "Sydney", Latitude = -33.8688, Longitude = 151.2093, Population = "5.3M" }
    };

    var tooltip = new MapsTooltipSettings
    {
        Visible = true,
        ValuePath = "Name"
    };
}

<ejs-maps id="maps" height="600px">
    <e-maps-zoomsettings enable="true" zoomFactor="2"></e-maps-zoomsettings>
    
    <e-maps-layers>
        <e-maps-layer shapeData="worldMapData">
            <e-layersettings-shapesettings fill="#C3E6ED"></e-layersettings-shapesettings>
            
            <e-layersettings-markers>
                <e-layersettings-marker 
                    visible="true" 
                    dataSource="cities"
                    shape="Circle"
                    fill="#FF6347"
                    height="15"
                    width="15"
                    tooltipSettings="tooltip">
                </e-layersettings-marker>
            </e-layersettings-markers>
        </e-maps-layer>
    </e-maps-layers>
</ejs-maps>

API 参考

Maps 类

Maps 主要组件类,包含用于控制地图行为和外观的属性、方法和事件。

命名空间: Syncfusion.EJ2.Maps
程序集: Syncfusion.EJ2.dll
官方 API 参考

核心属性(共 63 项)
属性类型默认值描述API 链接
AllowImageExportboolfalse启用或禁用地图导出为图像(PNG、JPEG、SVG)的功能了解更多
AllowPdfExportboolfalse启用或禁用地图导出为 PDF 的功能了解更多
AllowPrintboolfalse启用或禁用地图打印功能了解更多
AnnotationsListnull获取或设置用于自定义地图注释的选项。注释允许在指定坐标处叠加自定义 HTML/文本了解更多
Backgroundstringnull获取或设置地图容器的背景颜色了解更多
BaseLayerIndexdouble0获取或设置作为底图层的图层索引。用于确定地图中可见的图层了解更多
BorderMapsBordernull获取或设置用于自定义地图边框样式属性(宽度、颜色)的选项了解更多
CenterPositionMapsCenterPositionnull获取或设置地图的中心位置,使用纬度和经度坐标表示了解更多
Descriptionstringnull获取或设置地图描述,以支持辅助技术和无障碍访问了解更多
EnablePersistenceboolfalse启用或禁用在页面重新加载期间保留组件状态。保留缩放级别、平移位置等了解更多
EnableRtlboolfalse启用或禁用针对 RTL 语言以从右到左的方向渲染组件了解更多
Formatstringnull获取或设置应用于地图文本国际化的格式了解更多
Heightstringnull获取或设置地图的渲染高度。可以是百分比或像素值了解更多
HtmlAttributesobjectnull允许以键值对格式添加 title、name、data-* 等 HTML 属性了解更多
LayersListnull获取或设置用于自定义地图图层的选项。支持无限数量的图层和子图层了解更多
LegendSettingsMapsLegendSettingsnull获取或设置用于自定义地图图例的选项(位置、对齐方式、可见性等)了解更多
Localestring"en-US"覆盖此组件的全局区域性和本地化值了解更多
MapsAreaMapsMapsAreaSettingsnull获取或设置用于自定义地图周围区域(背景、边框)的选项了解更多
MarginMapsMarginnull获取或设置用于自定义地图边距(上、下、左、右)的选项了解更多
ProjectionTypeProjectionTypeMercator获取或设置投影类型(Mercator、EquirectangularProjection、MercatorProjection 等)了解更多
TabIndexdouble0获取或设置地图的 Tab 索引值了解更多
ThemeMapsThemeMaterial获取或设置地图支持的主题样式(Material、Fabric、HighContrast、BootstrapDark 等)了解更多
TitleSettingsMapsTitleSettingsnull获取或设置用于自定义地图标题的选项(文本、对齐方式、字体等)了解更多
TooltipDisplayModeTooltipGestureMouseMove获取或设置工具提示的显示模式(MouseMove、Click、DoubleClick)了解更多
UseGroupingSeparatorboolfalse启用或禁用格式化数字中分组分隔符的显示了解更多
Widthstringnull获取或设置地图的渲染宽度。可以是百分比或像素值了解更多
ZoomSettingsMapsZoomSettingsnull获取或设置用于自定义地图缩放操作的选项了解更多
地图事件(共 28 个)
事件类型触发条件描述
AnimationCompletestringnull地图中的动画完成后触发
AnnotationRenderingstringnull地图中的注释渲染前触发
BeforePrintstringnull开始打印前触发
BubbleClickstringnull在地图中对气泡元素执行单击操作时触发
BubbleMouseMovestringnull鼠标悬停在地图中的气泡元素上时触发
BubbleRenderingstringnull地图上的气泡元素渲染前触发
Clickstringnull用户单击地图中的元素时触发
DataLabelRenderingstringnull数据标签渲染前触发
DoubleClickstringnull在地图中对元素执行双击操作时触发
ItemHighlightstringnull形状、气泡或标记高亮显示前触发
ItemSelectionstringnull形状、气泡或标记被选中前触发
LayerRenderingstringnull地图图层渲染前触发
LegendRenderingstringnull图例渲染前触发
Loadstringnull地图渲染前触发
Loadedstringnull地图渲染后触发
MarkerClickstringnull单击标记元素时触发
MarkerClusterClickstringnull单击地图中的标记聚类时触发
MarkerClusterMouseMovestringnull鼠标移过标记聚类元素时触发
MarkerClusterRenderingstringnull地图中的标记聚类渲染前触发
MarkerDragEndstringnull标记在地图上的拖动停止时触发此事件
MarkerDragStartstringnull标记开始在地图上拖动时触发此事件
MarkerMouseMovestringnull鼠标移过地图中的标记元素时触发
MarkerRenderingstringnull地图中的标记渲染前触发
MouseMovestringnull鼠标指针移过地图时触发此事件
Panstringnull执行平移操作前触发
PanCompletestringnull执行平移操作后触发此事件
Resizestringnull窗口大小调整时触发,以通知地图尺寸已更改
RightClickstringnull在地图中对元素执行右键单击操作时触发
ShapeHighlightstringnull形状高亮显示前触发
ShapeRenderingstringnull地图中的形状渲染前触发
ShapeSelectedstringnull在地图中选中形状时触发
TooltipRenderstringnull地图中的工具提示渲染前触发
TooltipRenderCompletestringnull地图中的工具提示渲染后触发
Zoomstringnull缩放操作(如放大和缩小)前触发
ZoomCompletestringnull缩放操作完成后触发此事件
MapsLayer 类

定义各个地图图层的配置,支持几何数据、地图提供方和数据绑定。

官方 API 参考

MapsLayer 的主要属性
属性类型默认值描述
DataSourceobjectnull用于与形状绑定的数据源
ShapeDataobjectnull用于渲染形状的 GeoJSON 数据
ShapeDataPathstringnull数据源中用于与形状匹配的属性路径
ShapePropertyPathstring[]null形状数据中用于与数据源匹配的属性路径
BubbleSettingsListnull气泡可视化的配置
MarkerSettingsListnull标记可视化的配置
DataLabelSettingsMapsDataLabelSettingsnull形状上数据标签的配置
NavigationLineSettingsListnull导航线的配置
SelectionSettingsMapsSelectionSettingsnull形状选择的配置
HighlightSettingsMapsHighlightSettingsnull鼠标悬停时形状高亮的配置
TooltipSettingsMapsTooltipSettingsnull图层工具提示的配置
ShapeSettingsMapsShapeSettingsnull形状样式的配置
Typestring"Layer"图层类型(Layer 或 SubLayer)
Visiblebooltrue获取或设置图层的可见性
MapsZoomSettings 类

管理地图缩放和平移行为。

官方 API 参考

MapsZoomSettings 的主要属性
属性类型默认值描述
Enableboolfalse启用或禁用地图缩放
ToolbarOrientationstring"Vertical"指定缩放工具栏的方向(Horizontal/Vertical)
Toolbarsstring[]null定义缩放工具栏按钮(Zoom、ZoomIn、ZoomOut、Pan、Reset)
ZoomFactordouble2每次放大或缩小时的缩放因子
MinZoomdouble1最小缩放级别
MaxZoomdouble28最大缩放级别
EnableMouseWheelZoomboolfalse启用鼠标滚轮缩放
EnablePinchZoomboolfalse启用触控设备上的双指缩放手势
EnableSelectionZoomingboolfalse启用框选缩放(绘制矩形框进行缩放)
EnableDoubleTapZoombooltrue启用双击缩放
MapsShapeSettings 类

配置地图中形状的外观和行为。

官方 API 参考

MapsShapeSettings 的主要属性
属性类型默认值描述
Fillstring"#E5E5E5"形状的填充颜色
Opacitydouble1.0形状的不透明度(0 到 1)
Palettestring[]null用于颜色映射的调色板
ColorValuePathstringnull数据源中用于颜色映射的属性路径
ColorMappingListnull颜色映射配置
DashArraystring""定义形状边框的虚线样式
MapsMarker 类

定义要在地图指定坐标处显示的标记。

官方 API 参考

MapsMarker 的关键属性
属性类型默认值描述
DataSourceobjectnull包含标记位置和属性的数据源
Latitudedoublenull放置标记的纬度坐标
Longitudedoublenull放置标记的经度坐标
ShapeMarkerTypeCircle标记形状(Circle、Rectangle、Image、Letter、Template)
Widthdouble20标记宽度
Heightdouble20标记高度
Fillstring"#F41747"标记填充颜色
Borderstringnull边框配置
ImageUrlstringnullImage 类型标记的图片 URL
TooltipSettingsMapsTooltipSettingsnull标记的工具提示配置
相关类(40 多个可用类)
类用途API 链接
MapsLegendSettings配置和自定义图例链接
MapsTooltipSettings配置工具提示行为链接
MapsBubble气泡可视化设置链接
MapsColorMapping定义颜色映射规则链接
MapsDataLabelSettings自定义数据标签链接
MapsAnnotation注释配置链接
MapsNavigationLine导航线设置链接
MapsMarkerClusterSettings标记聚类配置链接
MapsTitleSettings自定义地图标题链接
MapsMargin边距配置链接
枚举
ProjectionType

定义支持的地图投影。

值描述
MercatorWeb 墨卡托投影(默认)
EquirectangularProjection等距圆柱投影/Plate Carée 投影
MercatorProjection墨卡托投影
Miller米勒圆柱投影
NaturalEarth1Natural Earth 1 投影
NaturalEarth2Natural Earth 2 投影
MarkerType

定义可用的标记形状。

值描述
Circle圆形标记
Rectangle矩形标记
Triangle三角形标记
Diamond菱形标记
Image自定义图片标记
Letter字母标记
Template自定义模板标记
MapsTheme

定义可用的主题。

值描述
MaterialMaterial 设计主题
FabricFabric 设计主题
HighContrast高对比度主题
BootstrapDarkBootstrap 深色主题
BootstrapLightBootstrap 浅色主题
TooltipGesture

定义工具提示显示模式。

值描述
MouseMove鼠标移动时显示(默认)
Click单击时显示
DoubleClick双击时显示
LegendType

定义图例类型。

值描述
Layers图层图例
Markers标记图例
Bubbles气泡图例

常见模式

模式 1:数据绑定分级统计地图

用例: 使用颜色编码的形状可视化各区域的统计数据。

@{
    var colorMapping = new List<MapsColorMapping> {
        new MapsColorMapping { Value = "Low", Color = "#90EE90" },
        new MapsColorMapping { Value = "Medium", Color = "#FFD700" },
        new MapsColorMapping { Value = "High", Color = "#FF6347" }
    };
}

<e-maps-layer shapeData="@geoJsonData" 
              dataSource="@statisticsData"
              shapeDataPath="RegionName" 
              shapePropertyPath="@(new[] { "name" })">
    <e-layersettings-shapesettings 
        colorValuePath="DataLevel"
        colorMapping="colorMapping">
    </e-layersettings-shapesettings>
</e-maps-layer>
模式 2:带缩放和选择功能的交互式地图

用例: 支持用户交互,以便详细探索。

<ejs-maps id="maps">
    <e-maps-zoomsettings 
        enable="true" 
        enableSelectionZooming="true"
        toolbars='new string[] {"Zoom", "ZoomIn", "ZoomOut", "Pan", "Reset"}'>
    </e-maps-zoomsettings>
    
    <e-maps-layers>
        <e-maps-layer shapeData="@mapData">
            <e-layersettings-selectionsettings 
                enable="true" 
                fill="#8B0000"
                opacity="0.5">
            </e-layersettings-selectionsettings>
            
            <e-layersettings-highlightsettings 
                enable="true" 
                fill="#FF6347">
            </e-layersettings-highlightsettings>
        </e-maps-layer>
    </e-maps-layers>
</ejs-maps>
模式 3:多个数据图层

用例: 在单张地图上叠加多个数据集。

<e-maps-layers>
    
    <e-maps-layer shapeData="@countryData" type="Layer">
        <e-layersettings-shapesettings fill="#E5E5E5"></e-layersettings-shapesettings>
    </e-maps-layer>
    
    
    <e-maps-layer shapeData="@stateData" type="SubLayer">
        <e-layersettings-shapesettings fill="transparent" border-width="1"></e-layersettings-shapesettings>
    </e-maps-layer>
    
    
    <e-maps-layer type="Layer">
        <e-layersettings-markers>
            <e-layersettings-marker dataSource="@locations" shape="Circle"></e-layersettings-marker>
        </e-layersettings-markers>
    </e-maps-layer>
</e-maps-layers>
模式 4:Bing Maps 集成

用例: 使用 Bing Maps 作为底图,并叠加自定义数据。

<ejs-maps id="maps">
    <e-maps-layers>
        
        <e-maps-layer layerType="Bing" bingMapType="Aerial" key="YOUR_BING_MAPS_KEY">
        </e-maps-layer>
        
        
        <e-maps-layer type="SubLayer" shapeData="@customData">
            <e-layersettings-shapesettings fill="#FF6347" opacity="0.5"></e-layersettings-shapesettings>
        </e-maps-layer>
    </e-maps-layers>
</ejs-maps>

关键属性参考

基本属性
属性用途示例
shapeData用于渲染形状的 GeoJSON 数据shapeData="worldMapData"
dataSource绑定到形状的数据dataSource="populationData"
shapeDataPath用于匹配形状的 dataSource 中的属性shapeDataPath="Country"
shapePropertyPath用于匹配数据的 GeoJSON 中的属性shapePropertyPath="@(new[] { "name" })"
colorValuePath用于颜色映射的数据属性colorValuePath="Population"
colorMapping定义颜色范围/值colorMapping="@colorMappingList"
图层配置
属性用途常用值
type图层类型Layer、SubLayer
layerType提供程序类型Geometry、Bing、OSM
visible显示/隐藏图层true、false
shapeSettings形状样式填充、边框、调色板
markerSettings标记配置形状、大小、颜色
bubbleSettings气泡配置大小、颜色、半径
交互设置
属性用途配置
zoomSettings缩放配置enable、zoomFactor、minZoom、maxZoom
tooltipSettings工具提示配置visible、valuePath、template
selectionSettings选择配置enable、fill、opacity
highlightSettings悬停高亮enable、fill、border

常见用例

用例 1:按区域划分的销售仪表板

创建分级统计地图,通过颜色强度显示不同区域的销售表现。

适用功能: 颜色映射、数据绑定、图例、工具提示

用例 2:门店定位器

在地图上显示零售门店位置并使用自定义标记,让用户可以缩放地图并点击查看详情。

适用功能: 标记、工具提示、缩放、Bing/OSM 集成

用例 3:人口密度可视化

使用气泡大小显示人口密度,气泡越大表示人口越多。

适用功能: 气泡、数据绑定、图例、颜色映射

用例 4:选举结果地图

通过颜色编码和交互式选择可视化各州/区域的选举结果。

适用功能: 颜色映射、选择、高亮、数据标签、图例

用例 5:航运路线可视化

使用带方向箭头的导航线显示城市之间的航运路线。

适用功能: 导航线、标记、注释、图层

用例 6:天气地图仪表板

在地图上叠加天气数据,并添加自定义注释和实时数据更新。

适用功能: 注释、动态数据、多个图层、地图提供程序

用例 7:房地产地图

使用自定义标记显示房源信息,并支持筛选和详细工具提示。

适用功能: 标记、自定义模板、工具提示、缩放、平移

相关组件

  • Chart - 用于非地理数据可视化
  • HeatMap - 用于基于矩阵的热力图可视化
  • TreeMap - 用于分层数据可视化
  • Diagram - 用于网络和流程图可视化

Additional Resources

评论

支持 Markdown