历史版本2 :FVS点击标题转移地图中心点和钻取 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本插件版本
11.0.16V1.15.1

1.2 应用场景

使用钻取地图时,需要使用鼠标手动操作进行地图钻取和中心点转移。

现提供一个方法,控件中输入经纬度后点击按钮转移中心点,选择区域名后点击按钮钻取到该区域。效果如下图所示:

1.3 实现思路

调用图表相关接口实现,接口如下:

  • chart.panTo(loc)  //转移位置

  • charts.drillDown(areas[i])  //下钻到区域 

  • chart.getLayerIndex()  // 获取当前钻取层级,获取的层级从0开始

  • chart.drillUp(index)  // 向上钻取

注:上述接口均不支持扩展图表。

2. 示例编辑

2.1 新建大屏模板

点击设计器左上角「文件>新建大屏报表」,新建空白模板。如下图所示:

2.2 准备数据

点击左下角「」按钮,点击「内置数据集」。如下图所示:

1)新建内置数据集 Embedded1,如下图所示:

2)新建内置数据集 Embedded2,如下图所示:

2.3 设计地图

2.3.1 添加图表

点击组件区「图表」按钮,选择「地图类>钻取区域地图」。如下图所示:

2.3.2 设置地图边界和数据

1)选中钻取地图,点击右侧属性面板「内容>类型」,地图边界选择「中国」,其余设置可自行选择。如下图所示:

2)点击「数据>数据」,选择「各层级分别指定」,第 1 层绑定 Embedded1 的区域数据,第 2 层绑定 Embedded2 的市级数据。如下图所示:

2.4 设置点击事件

2.4.1 添加标题

点击组件区「文字」按钮,选择「标题」,共添加五个标题组件。如下图所示:

分别将其内容设置为经度纬度下钻取区域中心点移动根据区域向下钻。如下图所示:

2.4.2 添加控件

1)点击组件区「控件」按钮,添加两个文本框和一个下拉框。如下图所示:

2)最终页面布局如下图所示:

2.4.3 给标题添加点击事件

选中标题中心点移动,点击右侧属性面板「交互>添加点击事件」,添加一个 JavaScript 类型的点击事件,输入 JavaScript 代码如下:

var chart=duchamp.getWidgetByName("钻取区域地图1_页面1");
var jingdu=duchamp.getWidgetByName("文本框1_页面1").getValue(); 
var weidu=duchamp.getWidgetByName("文本框2_页面1").getValue(); 
var loc=[weidu*1,jingdu*1];
chart.panTo(loc);

具体步骤如下图所示:

其余标题的代码如下:

  • 根据区域向下钻:根据指定区域向下钻取

var chart =duchamp.getWidgetByName("钻取区域地图1_页面1");//获取图表
var quyu = duchamp.getWidgetByName("下拉框1_页面1").getValue(); //获取下拉框控件值
if (chart.getLayerIndex() > 0)
chart.drillUp(chart.getLayerIndex() - 1); //若已经下钻,点击其他区域需返回上一层级后再次下钻
var areas = [];
chart.getSeries().forEach(ser => areas.push(...ser.points));
var len = areas.length;
for (var i = 0; i < len; i++) {
if (areas[i].name == quyu) {
chart.drillDown(areas[i]);
break;
}
 }

3.5 效果预览编辑

3.5.1 PC 端

点击模板右上角「保存」按钮,再点击「预览」,预览后的效果如 1.2节所示。

3.5.2 移动端

预览方式请参考 FVS移动端预览 ,效果如下图所示:

4. 模板下载编辑