Which JavaScript map API do you folks think is the most powerful?
Google? Bing?
Think about which map is more suitable for you, have all the places you need. In US and Europe Google, Bing, Yahoo have pretty similar maps. However if you need other countries (in Asia, South America, Eastern Europe, Africa), the only answer is OpenStreetMap.
About API. The most powerful and flexible is OpenLayers, it allows you to connect to different map services. However it is a bit slow and complicated.
In opposite Google API is fast and small, however it is bound to Google Maps.
If you are looking for some API contacting OpenStreetMap data, try Cloudmade.
Still choose the map first, and then select the most natural API for it.
I talk about my reasons for using the Google Maps API in this answer.
Top mapping tool must be ViaMichelin.
A independant poll carried out by the IMA said
ViaMichelin
Mappy
Microsoft
Yahoo
Map 24
Google
Poll was based on brand, quality, customisation, coverage, support, SLA, price, usability, speed, and 17 other criterias.
I thought that this was an interesting article on why Redfin decided to switch from Virtual Earth (Bing) to Google Maps.
I think the most powerful map API is Mapstraction - an abstraction layer that supports all the major mapping APIs, allowing you to switch providers without having to refactor your code.
Related
I am looking into different maps providing traffic data, comparing the data and traffic information they provide (I'm located in Denmark (Odense) so not everyone has data for that region).
The two most obvious are Google Maps and Bing Maps, both who provide traffic information on their default map.The thing is, I need not only the map but numbers and the data behind the traffic. From my research, it seems that Google doesn't provide any service or API exposing this data, but Bing does.
Does anyone here know how accurate both maps are when displaying traffic information? How do they compare? How do they get there information? Has there been any research done that tries to determine which one provides better traffic information?
I know this is a broad question, but any answer pointing me to a research paper, article or anything will be appreciated.
And is there maybe an alternative that's even better then the two mentioned above, that provide traffic in Denmark?
Both platforms have reasonable traffic data in Denmark. Bing Maps does provide some API's traffic, primarily a tile layer with color coded roads based on the flow of traffic, and a REST service which provides incidents such as constructions, road closures or accidents.
If you want the raw flow numbers or car count type information, neither platform provides this.
I want to know if anyone who has experience of using both the Google Maps API and the Multimap API can give a good reason as to why one is better than the other - or maybe a list of pros and cons?
I will be working on a complete re-development of a site which currently uses the Multimap (Classic) API and want to consider the possibility of using Google Maps API instead of Multimap (now MS Bing), but I need a compelling reason to justify this decision.
The site currently provides a search mechanism allowing users to search for addresses using postcode/partial postcode or city. The current system has a sqlserver database back-end containing full address details and also uploads (geocodes this information to Multimap with a daily scheduled task). I'm wondering if it's possible with the Google API to avoid the need for the daily upload and just use it's geocoding API instead (though this is limited by Google's restriction of a certain number of geocoding requests per day).
In my experience using the two, Bing Maps are more accurate with regards to their geocaching, but Google have slightly nicer looking Road Maps.
The Google Maps API is slightly more helpful - for example, if you have 2 markers, the map automatically zooms out to the right level, Bing takes a bit more work.
Aerial maps look pretty much the same on both, as do the Hybrid maps.
My advice would be - use Bing maps for geocaching, then if you want really nice looking road maps, use Google. If you're using Aerial, Hybrid or Birdseye view, you might as well stick with Bing.
According to Wikipedia Multimap was purchased by Microsoft some years ago and its direction features were merged into the Microsoft Bing api. I suppose the Multimap API primarily exists for legacy purposes. By the end of 2010 multimap might disappear, so this is definitely a compelling reason to re-write the geocoding part of your app...
In any case I would contact Multimap how long they plan to support their API and if there is a migration path (probably to bing maps).
Bing Maps as well as Google Maps now offer real-time geocoding services over Javascript (see http://msdn.microsoft.com/en-us/library/ff710027.aspx for an example in bing). Which one to pick? Check the terms of usage and the costs of the geocoding requests per day.
Yes skip the old legacy Multimap and use Google Maps or Bing Maps. Both are in active competition and under active development. So one might be better in one area for a few months but the chances are it will change. Eg. Bing Maps was the first with multi-touch support (using Silverlight) but Google Maps now supports it with its v3 API. (unfortunately all but the most basic map overlays will crash Google Maps multi-touch apps crash with the most widely available multi-touch platform: Safari on the iPad/iPhone).
At the moment I think Bing Maps has the edge, but at the end of the day your decision is probably going to be subjective (those maps look nicer / I find the API slightly nicer / etc), or depending on the exact wording of the EULA (ie. do you pay? and how much? for your specific application).
You talked about geocoding. An increasing number of people are looking at using multiple geocoding platforms. Primarily because geocoding coverage of all the services are imperfect, but it also gives you cover if one service goes down.
I want to create an application where users can mark on map location of polluting factories. Google map provides a MAP editor feature. We would like to have our own website like www.toxic-map.org where people could mark these locations. What would be the best approach for this?
Additionally we should be able to backup this database which could be cross checked or used for other purposes.
This will enable us to have little accurate census of such entities and thereby helping us in the fight against these environment harming, illegal factories. Most of our work is focused on developing countries of Asia.
Edited: Google maps is one of the options. I am open to other possible solutions as well. I am looking at something we could do quick prototyping in.
Thank you in advance!!
On the client side, I recommend you to have a look at OpenLayers, a free and open source web mapping framework released under a BSD-style License. It is completely written in Javascript and offers a lot of functionality, including the features that your application may need (Add markers to the map, drag them to adjust the locations, ...).
It also supports dozens of different geographic data formats and services such as WMS, KML or Google Maps.
If you are worried about licensing issues regarding the use of Google Maps, you can use other global data sources like OpenStreetMap or a public WMS if they provide enough coverage of your area of interest.
On the server side, I agree with the answer provided by Daniel Vassallo. I will just add a little detail and recommend you to serve the markers in a standard format natively supported by OpenLayers like KML, GeoJSON or GeoRSS. It will make really easy to draw the markers on the map.
Looks like a really interesting project, I hope you are lucky starting it up.
I seem to remember that there are restrictions to what you can do with the coordinates if you enter them through Google's interface, but if that doesn't bother you then sure, Google might be the way to go. (It may just pertain to geometrical figures entered into Google Earth or something like that.)
Google seems to be in line with your ideology anyway, as they're doing a lot of green power development. Might even be a selling point.
But if you can input the data separately and have Google Maps just display it for you then I wouldn't think they could hold claim to the data.
I think your best bet is to use the Google Maps API instead of the map editor in My Maps.
With some basic JavaScript, you will be able to allow users to drop markers on the polluted locations they would want to tag.
You will need a database on the server-side, and a thin application layer that:
Accepts and validates new markers added by users.
Serves the markers from the database to the browser.
You may want to use AJAX to interact between the browser and the application layer.
I think this type of project would be an excellent candidate to be hosted on the Google App Engine. You will be able to leverage on the simplicity of the webapp framework, and the Google Datastore appears to fit well.
As a side-note, you might be interested in checking out the Heat Map API for Google Maps. I think heat maps would look good in a project like this.
The approach is this:
1. User can drag the marker to the location of toxic factory.
2. A simple form opens to enter details of the toxic factory.
3. The latitude, logitude and other datails are then saved in database.
Please refer www.loppee.com They have a similar solution where user can mark the location of people or places of interest. Loppee uses LeafletJS javascript framework. It is a simple framework. You would be able to develop quick prototype. LeafletJS.com has simple and easy to use code samples.
Additionally, you can enable Geolocation and IP triangulation. Refer: Longitude and latitude value from IP address
I'm working on an application in Flex will utilize mapping features. I have experience with the Google Maps API in Flex, but it seems sort of limited to me (as compared to other APIs and the Javascript API). In particular, I'm interested in developing some clustering (grouping places together to prevent too many points from being on the map at once, slowing rendering). I'm wondering if anyone has any recommendations on which API to use/look into, and perhaps which APIs have features unique to them. I think visually some of the other providers have "nicer looking" maps as well. What I'm checking now:
Google Maps API
Have a lot of familiarity, but might be missing some key features.
Yahoo Maps API
Don't know a lot about it. Seems to handle a lot of markers very well. Looks really nice visually. 50K requests per day for free is less than google.
ArcGIS SAMPLES
I've had my eye on this for awhile. Seems really robust. Great samples index. Also seems to autoscale markers based on the zoom depth. They also seems to have a lot of data-based maps you can access.
MapQuest API
Looks to have great docs and features. Noteable are the "decluttering" and I think it has clustering.
Going through this awesome list right now, but I'd love to know if any of you Flex (or other lang!) devs have any experience with mapping and would like to give some advice.
We are using Flex Maps by Igor Costa. It lets you use Nokia Here Maps or Bing Maps.
It is based on ModestMaps AS3 and you can personalize your markers or polygon overlays.
It also works on mobile devices using Adobe AIR SDK.
I hope this component will be added to the Apache Flex SDK as a map component.
There is also good Flash API UMapper. Look at their site
http://www.umapper.com/pages/products/#umap
They allows you to use many map providers, like MS, Yahoo, Google, Cloudmade, OpenStreetMap, ESRI, Digital Globe.
I thought of using map in my blog. So which api will suit for me??
I am expecting that map should have more features. I dont know how to use it.. Sorry if my question is silly.
I need docs of both. Please let me know??
Both mapping API's are well documented by the respective parties, just google it and you'll find what you need. The MS Api is a little more restrictive but then the MS maps have better support for bringing up nice looking pop-up boxes etc.
The only real considerations after working with both are design and whether you need https support or not because Google maps will give IE users on https a nasty security dialogue pop-up that won't go away unless you pay Google $10,000 (but being for your blog I wouldn't imagine your fussed about that)
They are both pretty similar. I have used Google Maps API and it is very easy to get up and running and does everything I need. It also has street view which is a nice extra.
You should provide us more details in order to get a better answer but I will give you my thoughts anyway:
I have used the virtual earth API in a project I did in 2007. By that time we decided to go for the MS version as it had a better documentation and would fit better with our technology set i.e. MS SQL, .NET etc .... and best of all: it was for free!
Google at that time was offering a nicer UI for maps and stuff but after a certain number of requests you would start getting charged....
If you are developing in .NET I would certainly go for Virtual Earth now as Microsoft has shipped the official virtual earth sever side control ....
Some links:
http://dev.live.com/Virtualearth/sdk/
http://code.google.com/apis/maps/
Personally I think Virtual Earth is an inferior product compared to Google Maps with Street View. I haven't looked at either API but my experience with using other web based APIs from Google and Microsoft is that Google exposes a lot more functionality. The web is their bread and butter. It's a defensive action from MS. I love MS btw, so this isn't a hater ranting...
Pretty sure that MS Virtual Earth will require your users to download a viewer specific to actually see and interact with the map. The Google API will work directly with the browser. Really it comes down to what sort of functionality are you looking to include? if you just want to display various places on a map then GoogleAPI will work fine for you, if you want to be able to do an exploded view of a location from 3 miles away and then zoom in on it like you would if you approached it in a fast moving plane then MS Earth.
Google Maps API or MS Earth Developers