Zing Charts - 在地图上放置项目

时间:2014-09-03 16:15:30

标签: maps zingchart

我正在尝试将位置标记放在美国地图上,类似于本页中的那个

http://www.zingchart.com/blog/2012/07/17/interactive-html5-maps-api/ (将项目放在地图部分。)

我无法找到用于指定此内容的JSON属性(其上的链接仅限于网站的主页)。 请帮我说明如何操作或指向我的任何文档。

[ - EDIT--] 我找到了一个函数,使用Lat / Lon值在地图上获取XY坐标,反之亦然(zingchart.maps.getXY(mapid,lonlat,itemid))..但我仍然坚持在XY上放置一个标记点。

[ - EDIT--] 以下答案按预期工作。我想把标记放在美国地图上。我想知道如何在阿拉斯加/夏威夷州的lat / lon信息上放置标记,因为它们位于加利福尼亚州下面作为一个单独的多边形,尽管它们在地理上位于美国之上。

1 个答案:

答案 0 :(得分:2)

我在ZingChart团队,我绝对可以帮助你解决这个问题!

在找到XY坐标之前等到地图加载至关重要。使用ZingChart'load'API事件监听器等待图表加载:

zingchart.load=function() {
    drawPoints();
};

在我们的drawPoints函数中,我们将找到经度和纬度值。如果值是北和东,则数字将为正数,南部和西部将为负数。例如,圣保罗位于46.6333°W,23.5500°S,因此我们将使用[-46.63,-23.55]。在this map demo,我们在班加罗尔放置了一个标记,位于E的77.5667°,12.9667°N,因此我们将使用[77.57,12.97]。

var lonlat = [77.57, 12.97];
var bangalore = zingchart.maps.getXY('map', lonlat);

getXY方法返回一个长度为2的数组,索引0处的值为x位置,索引1处的值为地图的y位置。

现在我们在变量中有班加罗尔的X Y坐标,我们可以使用addobject API method在该位置放置标记。下面,'zc'与用于放置图表的div的id相同。

zingchart.exec('zc', 'addobject', {
    type: 'shape',
    data: [{
        x: bangalore[0],
        y: bangalore[1],
        type: "circle",
        size: 3
    }]
});

要完整查看代码,请查看所提供的地图演示的页面源。

如果您有任何其他问题,请与我们联系!