【问题标题】:Google Maps Fusion Tables feasibilityGoogle Maps Fusion Tables 的可行性
【发布时间】:2013-11-19 09:31:07
【问题描述】:

我想知道是否有人可以提供一些关于谷歌地图方法的见解。目前我正在使用 google maps api v3 开发可视化。这种可视化将绘制出多边形:国家、州、邮政编码、城市等。以及地图 3 个其他标记(气球、圆圈..)。该数据由可以应用过滤器并且可以钻取到多个级别的基础报表动态驱动。我遇到的最大问题是动态渲染多边形。使用 Google Maps V3 生成多边形所需的数据很大。它还需要在运行时进行大量处理。

我的想法是,因为我的可视化永远不会允许用户返回非常大的数据集(所有邮政编码为美国)。我可以使用动态创建的融合表。

假设每次运行我的报告将返回 50 个州或 50 个邮政编码。用户可以从 state>zip 钻取。

第一次运行可视化用户将运行一个报告广告,它将返回状态名称和 4 个指标。是否可以根据这些信息动态创建融合表?我能否通过 4 个指标和格式来绘制地图上的所有不同标记?

用户将在第二次运行中从州钻探到邮政编码。然后,该报告将返回 50 个邮政编码和 4 个指标。是否可以删除初始表并创建另一个表来映射具有与上述相同要求的地图?提供融合表邮政编码(22054、55678....)和 4 个度量值和格式。

对不起,啰嗦了。即使在阅读了融合表文档之后,我也不能 100% 确定这一点。

【问题讨论】:

    标签: google-app-engine google-maps google-maps-api-3 google-fusion-tables


    【解决方案1】:

    完全托管的解决方案

    如果您可以上传完整的数据集并让 Google 进行深入研究,您可以查看 Google Maps Engine 平台。它专为处理大量地理空间数据而设计,因此您无需承担繁重的工作。

    产品页面在这里:http://www.google.com/intl/en/enterprise/mapsearth/products/mapsengine.html

    API 文档在这里:https://developers.google.com/maps-engine/

    在此处将您的数据与普通 Maps API 挂钩的详细信息:https://developers.google.com/maps/documentation/javascript/mapsenginelayers

    动态托管解决方案

    但是,由于您想动态执行此操作,因此有点棘手。 Fusion Tables APIMaps Engine API 此时都不支持通过其 API 创建表,因此您最好的选择是以一致的模式对数据建模,以便您可以创建表(在任一平台)提前并使用 API 按需上传和删除数据。

    例如,您可以提前在 MapsEngine 中为每个向下钻取级别创建一个表(例如,一个用于州,一个用于邮政编码)并使用batchInsert 方法在运行时添加数据。

    如果您更喜欢 Fusion Tables,可以使用 insertimportRows

    客户端解决方案

    上述解决方案相当复杂,您最好使用 Maps v3 API 绘图功能(例如 simple polygons)生成形状。

    如果您的数据映射非常复杂,您可能会发现使用 D3.js 将数据绑定到 Google 地图更容易。有一个很好的例子here。不幸的是,这确实意味着要研究另一个 API。

    【讨论】:

    • 数据好像需要上传。但是由于这些数据是报告驱动的,并且会根据报告中的内容而改变,这是不可行的。
    • 啊,所以你的意思是完整的数据集不能提前获得?很不幸 - 我会更详细地更新我的答案。
    • 我认为唯一适用于该应用程序的解决方案是通过 APIv3 动态构建谷歌地图。托管这些地图将被驱逐的任何数据集都将变得难以管理。目前有 1 个“项目”正在生产中。这个项目有几千个指标,都可以用来驱动谷歌地图的可视化。目前我一次支持 4 个指标。第一个驱动一个多边形,该多边形是使用每个空间区域(州、邮政编码、县)的纬度/经度数组绘制的。
    • 其他 3 个驱动放置在多边形中心的不同标记(圆圈、气球、星星)。由于数据是如此动态,因此在运行时使用 API 构建这个谷歌地图似乎是唯一的解决方案。虽然有点慢,但我将可视化设计为只能呈现一小部分可用数据。所以所有 50 个州,然后用户可以深入到 50 个州并查看在该州内找到的所有邮政编码等。我非常感谢这篇有见地的帖子,并且将来一定会参考它。
    猜你喜欢
    • 2013-02-06
    • 2017-06-14
    • 2014-03-23
    • 1970-01-01
    • 2012-12-05
    • 2012-04-24
    • 1970-01-01
    • 2014-10-11
    • 1970-01-01
    相关资源
    最近更新 更多