繁体   English   中英

如何在Google Visualization Map API中设置zoomLevel?

[英]How to set zoomLevel in google Visualization Map api?

我正在尝试通过以下链接实现可视化地图API :https://developers.google.com/chart/interactive/docs/gallery/map

我成功在Google地图上绘制了点,但无法设置缩放级别。 对于单点,缩放级别自动设置为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)但是它不起作用。

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

它称为zoomLevel (有趣,问题的标题包含正确的答案^^)


但是,奇怪的是,可视化API没有提供访问底层google.maps.Map -instance的方法。

您可以添加这样的方法(风险自担),将其添加到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通过调用方法-instance getMap的的google.visualization.Map -instance。

例:

map.getMap().setZoom(12);

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

您可能可以尝试使用像这样的draw方法重绘地图

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM