使用数据源插入图钉

您可以将包含现有数据的表加载到 map 控件中。 然后控件会将表中的每一行绘制为地图图钉。

先决条件

  1. 创建画布应用并确保它满足地图空间先决条件
  2. 在您的应用中,插入地图

从 Excel 工作簿中添加图钉数据

您的数据源需要包含一个带有以下列的命名表,这些列之后应映射到控件高级窗格中的关联属性。

列说明 映射到属性 需要
图钉的标签 ItemsLabels 需要
图钉的经度 ItemsLongitudes 需要
图钉的纬度 ItemsLatitudes 需要
图钉的颜色 ItemsColors 可选
图钉的图标 ItemsIcons 可选

颜色字段接受任何 CSS 字符串,如 Power Apps 中的 Color 枚举与 ColorFade、ColorValue 以及 RGBA 函数中所定义的。

您可以将图像模板列表主题中描述的图标用作图标。

以下 Excel 表显示了所需列:

带有名为 TestData 并包含名称、经度和纬度列的表的示例 Excel 文件

您可以复制以下示例数据来测试此功能:

客户 经度 纬度 颜色 图标
Fourth Coffee(示例) -98.29277 26.2774 蓝色 marker-flat
Litware, Inc.(示例) -96.85572 32.55253 #ffefcd hexagon-thick
Adventure Works (示例) -96.99952 32.72058 car
Fabrikam, Inc.(示例) -118.30746 34.86543
Blue Yonder Airlines(示例) -118.66184 34.17553
City Power & Light(示例) -113.46184 37.15363
Contoso Pharmaceuticals(示例) -80.26711 40.19918
Alpine Ski House(示例) -102.63908 35.20919
一家数据公司(示例) -89.39433 40.71025
Coho Winery(示例) -116.97751 32.87466
  1. 将表复制并粘贴到新数据源。 在此示例中,我们使用的是 Excel 工作簿。

  2. 选择一个单元格,然后在功能区的“主页”选项卡上,选择格式化为表并选择任意样式,然后选择确定

    此屏幕截图突出显示了 Excel 中的“格式为表”选项。

  3. 选择表,然后转到功能区上的表设计选项卡。 在表名称: 下为表输入名称,例如,TestData

    突出显示 Excel 中的表名称的屏幕截图。

  4. 保存工作簿。

  5. 在 Power Apps 中打开或创建一个新应用,然后插入 map 控件。

  6. 属性窗格上,选择 Locations(Items) 字段,然后搜索 excel 并选择从 Excel 导入

    “从 Excel 导入”选项的屏幕截图。

  7. 找到 Excel 工作簿,然后选择打开。 选择包含信息的表 TestData,然后选择连接

    表选择面板的屏幕截图。

  8. 属性窗格上,转到高级选项卡,然后选择更多选项

  9. 设置以下属性:

    • ItemsLabels"Name"
    • ItemsLatitudes"Latitude"
    • ItemsLongitudes"Longitude"
    • (可选)ItemsColors"Colors"
    • (可选)ItemsIcons"Icons"
  10. map 控件现在将表中的每一行显示为一个图钉,标有 Excel 表中定义的名称,使用提供的图标和颜色。 如果未提供图标或颜色,控件将使用默认图标和颜色。

    使用自定义图标和不同颜色的 map 控件的屏幕截图。

备注

每个 map 控件最多可以显示 5000 个来自纬度或经度的图钉以及 50 个来自地址的图钉。 地址的图钉限制较低,因为地图需要将这些地址地理编码为纬度或经度以显示它们。 建议您尽可能不要使用地址。 您可以将经过地理编码的地址保存回数据源

对单个图钉同时指定纬度或经度和地址时,map 控件将优先使用纬度或经度以避免对地址进行地理编码。

将 map 控件中经过地理编码的地址保存到数据源

为避免每次启动 map 控件时对同一组地址进行地理编码,您可以将经过地理编码的地址保存回原始数据源,这样当地图重新启动时,它将使用纬度和经度,而不是再次对地址进行地理编码。

要实现此目的,请添加一个按钮来使用以下公式将地理编码地址保存回原始数据源:

 ForAll(Map1.GeocodedItems, Patch(Accounts1, LookUp(Accounts1, ThisRecord.Address = Address && ThisRecord.Name = Label), {Latitude: Latitude, Longitude: Longitude }))

在公式栏中显示公式的应用的屏幕截图。

其他交互式地图功能

其他地理空间控件

要在键入时看到动态地址建议,请使用 地址输入 控件。

备注

您能告诉我们您的文档语言首选项吗? 进行简短调查。(请注意,此调查是英文版调查)

此调查大约需要七分钟。 不会收集个人数据(隐私声明)。