[comment]: # ({2091b9ba-f2076b88})
# 7 地理地图

[comment]: # ({/2091b9ba-f2076b88})

[comment]: # ({6149218e-f4e7e64a})
### 说明

各个仪表盘组件字段对象中的这些参数和可用属性值允许在`dashboard.create` 和 `dashboard.update` 方法中配置[*地理地图(Geomap)*](/manual/web_interface/frontend_sections/dashboards/widgets/geomap)组件。

::: noteimportant
在创建或更新仪表盘期间不会验证组件的 `fields` 属性。
这个方法允许用户修改[内置组件](/manual/web_interface/frontend_sections/dashboards/widgets)和创建[自定义组件](/devel/modules/tutorials/widget)，但也会导致存在错误创建或更新组件的风险。
为确保成功创建或更新*地理地图(Geomap)*组件，请参阅下表中概述的参数行为。
:::

[comment]: # ({/6149218e-f4e7e64a})

[comment]: # ({33104e1e-90ce35af})
### 参数

以下参数适用于 *Geomap* 小组件。

|参数|<|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|名称|值|
|-|--------|--|--------|-------------------------------|
|*刷新间隔*|<|0|rf_rate|0 - 不刷新；<br>10 - 10 秒；<br>30 - 30 秒；<br>60 - *(默认)* 1 分钟；<br>120 - 2 分钟；<br>600 - 10 分钟；<br>900 - 15 分钟。|
|*主机组*|<|2|groupids.0|[主机组](/manual/api/reference/hostgroup/get) ID。<br><br>注意：要配置多个主机组，请为每个主机组创建一个 dashboard 小组件字段对象，并在属性名中递增编号。<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|<|*主机组（小组件）*|1|groupids.\_reference|替代 [主机组](/manual/api/reference/hostgroup/get) ID：<br>`ABCDE._hostgroupids` - 将 [兼容小组件](/manual/web_interface/frontend_sections/dashboards/widgets#widget-compatibility)（其 *Reference* 参数设置为 "`ABCDE`"）设为主机组的数据源。<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|*主机*|<|3|hostids.0|[主机](/manual/api/reference/host/get) ID。<br><br>注意：要配置多个主机，请为每个主机创建一个 dashboard 小组件字段对象，并在属性名中递增编号。对于多个主机，参数 *主机组* 必须要么完全不配置，要么至少配置一个所配置主机所属的主机组。<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|<|*主机（小组件/仪表板）*|1|hostids.\_reference|替代 [主机](/manual/api/reference/host/get) ID：<br>`DASHBOARD.hostids` - 将 [*主机* 选择器](/manual/web_interface/frontend_sections/dashboards/widgets#override-host) 设为主机的数据源；<br>`ABCDE._hostids` - 将 [兼容小组件](/manual/web_interface/frontend_sections/dashboards/widgets#widget-compatibility)（其 *Reference* 参数设置为 "`ABCDE`"）设为主机的数据源。<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|*标签*|<|<|<|<|
|<|*评估类型*|0|evaltype|0 - *(默认)* 与/或；<br>2 - 或。<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|^|*标签名*|1|tags.0.tag|任意字符串值。<br><br>注意：属性名中的数字表示标签在标签评估列表中的顺序。<br><br>[参数行为](/manual/api/reference_commentary#parameter-behavior)：<br>- 如果配置 *标签*，则为 *必需*<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|^|*运算符*|0|tags.0.operator|0 - 包含；<br>1 - 等于；<br>2 - 不包含；<br>3 - 不等于；<br>4 - 存在；<br>5 - 不存在。<br><br>注意：属性名中的数字表示标签在标签评估列表中的顺序。<br><br>[参数行为](/manual/api/reference_commentary#parameter-behavior)：<br>- 如果配置 *标签*，则为 *必需*<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|^|*标签值*|1|tags.0.value|任意字符串值。<br><br>注意：属性名中的数字表示标签在标签评估列表中的顺序。<br><br>[参数行为](/manual/api/reference_commentary#parameter-behavior)：<br>- 如果配置 *标签*，则为 *必需*<br><br>如果在 [模板 dashboard](/manual/api/reference/templatedashboard/object) 上配置此小组件，则不支持此参数。|
|*初始视图*|<|1|default_view|以逗号分隔的 *纬度*、*经度*、*缩放级别*（*可选*，可用值范围为 0-30）。<br>示例：`40.6892494,-74.0466891,10`。|
|*Reference*|<|1|reference|任意由 5 个字符组成的字符串值（例如 `ABCDE` 或 `JBPNL`）。此值在该小组件所属的 dashboard 中必须唯一。<br><br>[参数行为](/manual/api/reference_commentary#parameter-behavior)：<br>- *必需*|

[comment]: # ({/33104e1e-90ce35af})

[comment]: # ({19dde7e3-7eae8154})
### 示例

以下示例仅用于介绍如何在仪表盘组件字段对象中配置*地理地图(Geomap)*组件。
更多信息，请参考[创建仪表盘](/manual/api/reference/dashboard/create)。

[comment]: # ({/19dde7e3-7eae8154})

[comment]: # ({0a0e2a99-a5de665c})
#### 配置一个*地理地图(Geomap)*组件

配置一个*地理地图(Geomap)*组件，用于展示主机组 "2" 和 "22" 中符合以下标签配置的主机：
标签名称为 "component"，标签值为"node"；标签名称为 "location"，标签值为 "New York"。
同时，将地图初始视图设置为：坐标为 "40.6892494"(纬度)、"-74.04668991"(经度)，缩放级别为 "10"。

[请求](/manual/api#执行请求):

```json
{
    "jsonrpc": "2.0",
    "method": "dashboard.create",
    "params": {
        "name": "My dashboard",
        "display_period": 30,
        "auto_start": 1,
        "pages": [
            {
                "widgets": [
                    {
                        "type": "geomap",
                        "name": "Geomap",
                        "x": 0,
                        "y": 0,
                        "width": 36,
                        "height": 5,
                        "view_mode": 0,
                        "fields": [
                            {
                                "type": 2,
                                "name": "groupids.0",
                                "value": 22
                            },
                            {
                                "type": 2,
                                "name": "groupids.1",
                                "value": 2
                            },
                            {
                                "type": 1,
                                "name": "default_view",
                                "value": "40.6892494,-74.0466891,10"
                            },
                            {
                                "type": 0,
                                "name": "evaltype",
                                "value": 2
                            },
                            {
                                "type": 1,
                                "name": "tags.0.tag",
                                "value": "component"
                            },
                            {
                                "type": 0,
                                "name": "tags.0.operator",
                                "value": 0
                            },
                            {
                                "type": 1,
                                "name": "tags.0.value",
                                "value": "node"
                            },
                            {
                                "type": 1,
                                "name": "tags.1.tag",
                                "value": "location"
                            },
                            {
                                "type": 0,
                                "name": "tags.1.operator",
                                "value": 1
                            },
                            {
                                "type": 1,
                                "name": "tags.1.value",
                                "value": "New York"
                            }
                        ]
                    }
                ]
            }
        ],
        "userGroups": [
            {
                "usrgrpid": 7,
                "permission": 2
            }
        ],
        "users": [
            {
                "userid": 1,
                "permission": 3
            }
        ]
    },
    "id": 1
}
```

响应：

```json
{
    "jsonrpc": "2.0",
    "result": {
        "dashboardids": [
            "3"
        ]
    },
    "id": 1
}
```

[comment]: # ({/0a0e2a99-a5de665c})

[comment]: # ({e9d30322-cc20c3df})
### 参考

-   [仪表盘组件字段](/manual/api/reference/dashboard/object#仪表盘组件字段)
-   [创建仪表盘](/manual/api/reference/dashboard/create)
-   [更新仪表盘](/manual/api/reference/dashboard/update)

[comment]: # ({/e9d30322-cc20c3df})
