如何在google Visualization Map api中设置缩放级别?

时间:2013-08-20 10:41:01

标签: javascript google-maps-api-3

我正在尝试按照此链接https://developers.google.com/chart/interactive/docs/gallery/map

实施可视化地图api

我在谷歌地图上成功绘制了点,但无法设置缩放级别。 对于单点,zoomlevel自动设置为19(最大级别)。

我的代码: -

var map = new google.visualization.Map(document.getElementById('map_div'));

map.draw(data, {showTip: true, zoom:14,  mapType: 'normal', useMapTypeControl:true, enableScrollWheel:false});

我试过这个map.setZoom(12)但它没有用。

2 个答案:

答案 0 :(得分:5)

google.visualization.Map中定义缩放级别的属性名称不是 zoom

它叫做 zoomLevel (好笑,你问题的标题包含正确的答案^^)


然而,奇怪的是,可视化API不提供访问基础google.maps.Map - 实例的方法。

您可以添加这样的方法(风险自负),将其添加到onload-callback:

google.visualization.Map.prototype.getMap=function(){
  for(var k in this){
   if(this[k].constructor==google.maps.Map)return this[k];
  }
}

您现在可以通过调用google.maps.Map - 实例的方法getMap来访问google.visualization.Map - 实例。

示例:

map.getMap().setZoom(12);

答案 1 :(得分:0)

这是因为根据您提供的文档页面,地图对象没有setZoom方法。

您可以尝试使用{/ 1}}这样的方法重绘地图

var newZoom = 12;
map.draw(data, {showTip: true, zoom:newZoom,  mapType: 'normal', useMapTypeControl:true, enableScrollWheel:false});