Comment atteindre l'effet densité / carte thermique dans iOS (iPhone / iPad)?

Heat Map of Worldwide GDP (PPP) Per Capita 2008

Ceci est la carte Factbook monde CIA, chaque pays a une profondeur de couleur différente en fonction de leur nombre de PIB. Pays à PIB élevé a une couleur plus profonde.

En ce moment, je considère pour développer un tel effet dans mon application carte iPhone / iPad. Je peux utiliser la carte Apple (probablement pas google map puisque iOS 6 a sa propre carte), mais je ne suis pas sûr de savoir comment get cet effet en fonction du pays visité par l'user.

Par exemple, l'user a visité le plus les États-Unis, puis la carte montre une couleur plus profonde aux États-Unis.

Je n'ai pas encore vu un tel effet dans l'application iPhone. Toute suggestion serait appréciée!

Cela devrait être faisable en utilisant MapKit et les overlays. Vous devez build une superposition pour chaque zone de la carte thermique, puis définir la couleur en fonction des données. Je soupçonne que le plus difficile sera d'get datatables géocharts dont vous avez besoin pour build les paths pour chaque région. AFAICT, il n'y a pas de -pathForState: ou -pathForCountry: type de fonctions dans MapKit, vous aurez donc besoin de find une autre source pour cette information. Mais en termes de dessin de superpositions, tout est là dans MapKit. Découvrez cet exemple de code .

MODIFIER:

Cette question a quelques indications sur l'endroit où get ces données.

Vous pouvez get les coordonnées au format json depuis le projet D3 sur github: https://github.com/latentflip/d3/blob/master/data/world-counsortinges.json

Vous pouvez download ce file json, utiliser NSJsonSerialization avec le file pour charger le file json dans un dictionary ou un tableau, puis créer vos superpositions à partir de là.

Une autre chose: vous n'êtes pas techniquement après une carte de chaleur; ce que vous êtes, c'est plus une carte "thématique".

Essayez la class LFHeatMap. Semble être ce que vous cherchez. https://github.com/gpolak/LFHeatMap