Zoomable political world map - google-maps

I'm looking to add an map to my application, which would have a world map with different coloured countries, States (in the US) and Provinces (in Canada). The user should be able zoom in to see details, as the scale for seeing the whole world isn't suitable for seeing details in Europe say. The colours would need to be programmed from my application, so a simple image map isn't appropriate.
Obviously the first place to look was Google, but Google Maps doesn't seem to be able to colour code countries. Google Charts can, but produces a single image, which isn't zoomable.
Am I wrong about google, or is there another way that I can use to produce a suitable map? It's a ruby on rails app, so anything which is ruby specific is fine, but ideally not any other language though if it's the only way, then it's the only way.

I developed jVectorMap for such visualizations.

Django has geo-django; If you want to do feature rich GIS web apps with Rails, you’re gonna have to assemble the pieces yourself.
Google maps is a good client, you can use overlays. You need the GIS data to generate the overlay polygons.

Related

How can I make a heatmap like the price heatmap of Housing.com

I have been trying for some weeks to come up with a price map. My inspiration is the heatmap found on the website of Housing.com . The link to the map is:
https://housing.com/dsl/heatmaps/mumbai/buy
I have tried:
Google maps Javascript API 3
heatmap,js library
and many other websites.
The resulting map that I am getting is visually less appealing.
Have they defined boundaries for very small regions and then introduced the gradient(which, again I am unaware how to implement.)
Any thoughts on how it might have been implemented are welcomed.
They don't use Google Maps Heatmaps Layer in the application, or any other library for creating heatmaps. You can see that between the requests the webpage makes are images like this, this and also more for bigger zoom levels. They just render these images over custom styled google maps as tiles.
More on how to render custom tiles over google maps, check this part of docs. For more information how to style the map below the heatmap to look like in the example, check this parts of docs.
Creating tiles images to render over your google maps can be troublesome, there are some tools, like this one which should be able to help you, but is paid. I don't know of any free solutions, you can create it manually although it might take some time.
Hope this helps you to better understand the implementation techniques behind the referenced map.

How to start an embedded kml tour?

This is my first post, wooohooo! I've been using stack exchange when I needed information but usually someone had the same problem as me and I didn't need to make a post. Which means this website is really good.
Now turns out I have a pretty unique problem.
Please check out http://gaia.tru.ca/birdMOVES/
You will see a website with a google map. It is connected to a db which will be automatically updated.
The purpose of this website is to track how birds feed. There is going to be bird feeders equipped with NFC all over the world to track birds equipped with RFID when they feed.
I am taking care of the front-end, the web app for visualizing.
This is a work in progress so try not to care about the looks of it.
Apparently everything was written in RApache because the person who made everything this far is a Geography teacher(Not a lot of programming background, I had to refactor his code and learn R because it wasn't in my array of known languages.)
My client asked me to add time animation to his map. Feasible with the help of Google Earth.
I made the existing R code generate a tour. It works perfectly and even shows on my map.
Here is the address of my dev server: http://thelab.dyndns.org:1080/birdmoves/
You can see that there is an extra check box for time animation. If you check it, the tour will appear as an object on the map (no way to use it whatsoever right now).
So what I'd like to know is how do I make it work? How do I make it autoplay when the submit button is pressed? With standard google earth controls for rewind, pause and fast-forward. And independently from the google maps without tour?
This is intense. I have the feeling google earth isn't going to work because they deprecated all their gadgets.
I'm on the clock and I need help.
In case you were wandering what eventually happened:
We ended up making a hybrid website where the static visualization is within Google maps using kml and the time animation is within CesiumJs using CZML.
CZML is based off JSON and can be used very similarly to kml.
The api is also very nice, it only takes one line of javascript code to get a map running on an existing server.
To implement time visualization CZML supports putting multiple consecutive values for almost any property(like position, to animate movement, or even color to change colors) and takes account of time.
Also very nice, CesiumJs supports animated 3d models!
If you're interested http://cesiumjs.org/
It also has a lot of support, documentation and tutorials... etc..
It's being maintained by professionals. I really recommend it.
The Google Earth API got deprecated and will not function by December this year which is not a viable option for a long term service. So cesium was the only option for this specific project.
Cheers

Using 3D in Google Maps

I would like to create a webapp where I can display my own geotiffs, with NDVI and other data layers, as well as 3D geometries, providing a seamless rendering of both 2D tiles and textured 3D shapes, exactly like maps.google.com achieves in switching from "map" to "earth" views.
After much research, the closest I came to a viable solution is to build the infrastructure from the ground up based on http://cesiumjs.org/, and while this seems doable, it is extremely low level, and will require an exotic cocktail of libraries and a buttload of man-hours.
Before going down that road, I want to make sure there isn't a cost effective alternative that takes all the heavy lifting out of my app's shoulders and gives me a friendly set of APIs to base my app on.
Mapbox comes close to perfection in this regard, but unfortunately, it only handles 2D.
On the other hand, on the Google side, amid Earth API and Maps Engine deprecation, it's hard to tell what exactly is currently possible and will remain available long term.
Bottom line, for a future-proof Google-centric solution built today, are there Google APIs in place that allow building a webapp that displays custom 2D and 3D data with a seamless rendering experience?
https://cesiumjs.org/ is a library very similar to google maps that provides support for 3d shapes on top of maps.

Custom color scheme in Windows Phone 8 map control

I am creating an app which mainly features a map and some special features. Because the map is the place where 90% of the interaction happens, I consider it as an important part of the app. Having watched Dave Crawford's design consultations, an essential part of making an app look good is to create a brand. Because there is pretty much nothing except the app bar, the map and some markers, I'm considering coloring the map itself.
But I've got two questions:
Will this have an positive affect on both the branding and the usability? I don't want the user to get a headache just because I prefer my color scheme, but I want my app to be unique
Will this be possible when using the phone built-in map control? This seems especially important to me as Windows Phone is capable of saving maps ofline and I want to have access to these maps
I would argue that should not adjust something like a map, for branding experiences.
Users have strict mental models of how maps should look and function. Deviating from the norm, only for brand, is not wise.
You might consider other ways to introduce your brand and value.
Perhaps through unique pins and markers, splash screens, additive menus, etc.
I'm assuming you mean the styling of the map itself (roads, parks, etc.)?
You would need to use your own custom map tiles, perhaps produced using a service such as Mapbox.
I use my own custom map tiles in NZ Topo Map, but I had to fallback to the older WP7 map control (Microsoft.Phone.Controls.Maps.Map) in order to use them. I couldn't find a way to base the map purely on my own tiles using the WP8 map control unfortunately (this answer has more detail).

What technology to use for an Interactive web map?

I need to build a custom interactive web map of my country with all it's regions (Peru). Which tool or technology would be the best way to go?
The idea is to have a map that shows the population of each region with a color scale: the more people the region has, the darker it's painted. Also I need to display some information as text and pictures when I click each region as the maps zooms in.
I've seen around and there are lots of "pre-developed" tools that can be customized but I need to build my own. Flash is already discarded. I was thinking of Java applet but is just an idea.
Thank you for your answers.
Here is the VectorWorkz GeoChart jQuery plugin, which are readily compatible with all major web-development platforms. It allows you to create heat map based on some data, you can bound your data to the regions so that region color will change when bounded data changes, it also allows you to add label text and markers into the map, adding image markers also possible.
I would not use a java applet, as seo searching of the applet will not happen. Who cares if it's a great applet if no one knows about it?
I would check out D3. I am trying to use it myself as we speak, but I have the feeling you can map your data to it quite well.