Google maps api 3 谷歌地图上的地理编码推文

Google maps api 3 谷歌地图上的地理编码推文,google-maps-api-3,twitter,geocoding,Google Maps Api 3,Twitter,Geocoding,如果你能帮我解决这个问题,我将不胜感激。我一直在看Marcin Dziewulski的精彩教程,他将最近的推特和推特用户头像整合到谷歌地图上。基本上,他把用户的头像放在他们最后发推特的地方。我强烈建议在此处查看教程: 除了涉及到用户的实际地理编码外,这一切似乎都是有意义的。当不同的推特来自不同的城市时,代码工作得很好。但是,假设您希望跟踪某个城市的某些用户。它们都是从城市中心进行地理编码的,你一次只能看到一个化身。如果您刷新页面,另一个页面将显示在完全相同的位置。这显然不是我想要的。我假设问题

如果你能帮我解决这个问题,我将不胜感激。我一直在看Marcin Dziewulski的精彩教程,他将最近的推特和推特用户头像整合到谷歌地图上。基本上,他把用户的头像放在他们最后发推特的地方。我强烈建议在此处查看教程:

除了涉及到用户的实际地理编码外,这一切似乎都是有意义的。当不同的推特来自不同的城市时,代码工作得很好。但是,假设您希望跟踪某个城市的某些用户。它们都是从城市中心进行地理编码的,你一次只能看到一个化身。如果您刷新页面,另一个页面将显示在完全相同的位置。这显然不是我想要的。我假设问题出在这段代码中:

var users = o.twitter.get(), arr = new Array;
        for (i in users){
            var user = users[i];
            $.getJSON('http://twitter.com/users/show/'+user+'.json?callback=?', function(data) {
                var img = data.profile_image_url,
                    screen_name = data.screen_name;
                geocoder.geocode({ address: data.location }, function(response, status){
                    if (status == google.maps.GeocoderStatus.OK) {
                        var x = response[0].geometry.location.lat(),
                            y = response[0].geometry.location.lng();
                        marker = new google.maps.Marker({
                            icon: img,
                            map: map,
                            title: screen_name,
                            position: new google.maps.LatLng(x, y)
                        });
我认为geocoder.geocode({address:data.location}位的代码需要更改,但不是100%正确。我似乎也无法在Twitter API文档中找到解决方案

我的问题基本上是这样的:上面的代码能被修改,以便它能收集到更准确的LAT和长的坐标,从哪里生成Twitter,然后在这些位置正确地显示它们?换句话说,不要只把纽约的推特推到纽约中部,而是把化身放在精确的位置。 我已经用我自己的推文测试过了,并启用了推特的定位功能。我就是搞不懂这个!再次感谢所有能提供帮助的人

最好的


<>布兰登

< P>问题是绝大多数的推文不是地理编码的,但是COORD仅仅是根据用户的位置设置猜测的。如果你想以有趣的方式显示,考虑做一个均匀分布的“城市中心”。latlongs。这是人口普查数据地图制作者在没有比某个地区或某个地区更准确的定位数据时经常做的事情。

除非推特是由移动设备发出的,否则它的lat/long将是ISP注册的地方。如果我从桌面上推特,我的推特将从纳什市国会大厦前的街道发出ville。如果我使用我的手机,允许twitter应用程序使用我的lat/long,那就不同了。相信我,我可以立即使用lat/long数据分析twitter流,我希望它能这么简单


你可以做的是添加一个抖动函数,沿x和y坐标场添加随机位移,以使tweets lat/long位移。或者你可以将其网格化。如果你知道有多少条tweets,你可以很容易地计算出网格的边界区域并这样做。

我手机上的两条tweets(启用位置)我的电脑(支持定位)显示在城市中心的确切位置。不管我用什么样的设备发推,我仍然会得到相同的结果。不幸的是,我不知道地图上会有多少“推特”,他们可能一整天都在移动。这是不可能的(我想)为每个唯一的人创建偏移量。我已返回(使用)JSON是每条推文的精确坐标。它们只是没有出现在地图上。我不知道如何将这种功能与上面的代码集成。与Erik来回交流非常好。再看看这个页面:是的,我看了这两个页面。仍然不确定该做什么!我想我没有遵循“城市中心”的想法latlongs?介意再解释一点吗?如果用户关闭了twitter客户端上的地理广播,twitter只有他们在个人资料中指定的位置。我的说我在纽约。为了尽可能提供帮助,twitter只会将该推文识别为来自纽约的一般位置。这个位置要么是城市的地理中心,要么是已经确定的代表城市的坐标。如果你看维基百科,大多数城市都有坐标,尽管它们不是点。这有点奇怪。我不知道为什么你的手机没有报告准确的拉特朗。但我不知道的是,用户是否有他们的locat在某些东西上启用了ion,比如手机,它仍然将他们的推文放在那个“通用位置”。正如我在下面提到的,我传递了一个直通JSON,我可以看到用户推文返回的实际坐标……超精确的坐标,有很多小数。我只是无法将这些坐标带到地图上并拥有化身显示在那里。看起来代码正在抓取
位置
,这是用户的一般城市位置。特定位置在
地理
中编码,通常是零。您可以检查地理的非零值,然后将其传递给地理编码器,而不是位置字符串。好的,这似乎是正确的有“地理”的参考资料吗?你从哪里得到这些信息,或者,我从哪里得到这些信息?是谷歌地图API还是Twitter API?