AmCharts地图-提高地图性能



我有一个应用程序,它使用amCharts 4显示世界地图,其中每个大陆的颜色都不同,然后在某些国家有一些气泡来显示一些数据。

对于地图,我有一个按国家代码键列出所有国家的对象。然后我有一个API,它返回关于哪些国家有一些与它们相关联的值应该显示在地图上的数据。

为了拥有不同颜色的大陆(有国家边界(,我为每个大陆创建了一个不同的系列,并对其进行了相应的着色。然而,由于数据结构的原因,这不允许我放置气泡,所以我有另一个系列,在所有彩色的气泡下面,一个完整的世界地图。

为了让气泡成为地方,我以演示中的一个例子为例,计算了每个国家的视觉中心。

我的问题是,这已经变得非常资源密集,以至于有时,随机地,地图无法正确构建,导致所有气泡都位于左上角。我想知道是否有任何方法可以提高这种性能,即:-计算视觉中心或获取视觉中心坐标的更简单方法。-在不必依赖单独的系列的情况下,为每个大陆上色

如果您不需要国家边界,我建议您采取以下步骤:

1( 创建一张包含国家和calculateVisualCenter = true的国家系列地图。2( 构建地图时,循环浏览所有多边形,并将每个多边形的visualLongitude/visionLatitude保存到某个对象中,在控制台中输出结果。3( 将实际地图中的坐标用于气泡位置。

以下是一个快速演示,其中坐标被保存并记录到控制台:https://codepen.io/team/amcharts/pen/bGdQXzE