【问题标题】:Problem of multiple marker on same position in Google Map APIGoogle Map API 中同一位置的多个标记问题
【发布时间】:2013-02-28 15:28:32
【问题描述】:

我在我的应用程序中使用谷歌地图。我的地图上有数千个标记。

我可以在地图上很好地显示它们。我在 php 中使用 MySQL 作为我的数据库。

但是当同一位置有多个位置时,我会遇到问题。它只为所有位置显示一个标记(对于相同的位置)。

在 API 中,对此没有解决方案。任何人都可以帮助我吗?

提前谢谢...

【问题讨论】:

    标签: php google-maps


    【解决方案1】:

    这不是一个“问题”本身。想一想……如果多个点共享完全相同的地理位置,显然,它们都将由一个点表示。然而,真正发生的事情是,同一点的所有标记都堆叠在一起。

    您可能想尝试使用 MarkerClusterer 来表示有多少标记与集群共享相同的地理位置: http://googlegeodevelopers.blogspot.com/2009/04/markerclusterer-solution-to-too-many.html

    OTOH,如果您有那么多点共享相同的位置以首先需要聚类,那么以最大缩放级别对它们进行去聚类绝对没有意义。此外,markerclusterer 不会这样做。

    如果您确实需要有关如何分别表示同一位置的多个点的可能解决方案,请参阅我的博客: http://act28.blogspot.com/2011/05/multiple-locations-with-same-latlong.html

    【讨论】:

      【解决方案2】:

      对于纬度/经度在缩小时出现在同一位置,但实际上不同,请查看http://code.google.com/apis/maps/documentation/javascript/v2/overlays.html#Marker_Manager的聚类示例对于完全相同的位置,您只能稍微改变一下位置。

      【讨论】:

        【解决方案3】:

        听起来您将一个标记直接放在另一个标记之上。您使用的是纬度/经度坐标吗?如果是这样,您可以通过从重复的纬度/经度中随机添加或减去(非常)小的值来调整重复的位置。有点 hacky,但我不确定你还能如何处理这个问题。

        【讨论】:

        • 我不想改变他们的立场。
        • 那么我认为你不会有太多的运气,对不起。
        • 我想我可以做一些事情,比如我可以打开一个 div 标签,其中包含所有可用位置及其链接。你怎么看???
        • 当然,您可以像 Yelp 那样链接到位置。当用户单击列表时,将注意力集中在标记上并显示信息叠加层。但看起来那里只有一个标记。
        • 我认为为此我可以使用不同的图标并为用户提供一些信息。
        【解决方案4】:

        我所做的是在一个特殊的数组键中散列长/纬度值。然后所有标记将在相同位置的相同数组键中,然后您可以迭代数组并在一个信息窗口中显示信息。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-07-05
          • 1970-01-01
          • 2014-04-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多