Чтобы сделать это, вам нужно будет сделать несколько вещей. Сначала вам нужно получить данные из МВФ о показателе ИЧР в каждой стране. К счастью, вы можете получить эти данные из API развития человеческого потенциала Программы развития ООН: http://ec2 -54-174-131-205.compute-1.amazonaws.com / API / HDRO_API.php / Indicator_id = 137506 / год = 2017
Далее вам необходимо выяснить, что ИЧР означает «развитый, развивающийся, менее развитый и наименее развитый». Программа развития Организации Объединенных Наций делит ИРЧП на четыре категории (пять, включая страны с недоступными данными):
- Очень высокий: 1.000 - 0.800
- Высокий: 0,700 - 0,799
- Средний: 0,555 - 0,699
- Низкий: 0,350 - 0,554
- Данные недоступны
Теперь вам нужно посмотреть на эти данные и создать карту в MapBox Studio. Вы можете либо пройти через JSON данных и создать новый стиль для каждой нации (учебное пособие здесь: https://docs.mapbox.com/help/tutorials/style-single-country/), либо вы можете проанализировать файл JSON во внешнем интерфейсе и добавить стили из приложения.
Если вы создаете карту MapBox, стиль карты можно использовать в вашем приложении, установив свойство стиля карты. Это делается после создания карты, взятия URL-адреса общего ресурса и установки стиля вашей карты на этот URL-адрес, когда он инициализируется во внешнем интерфейсе.
Используя URL-адрес общего доступа, вы можете создать карту в интерфейсе пользователя.
iOS (Swift):
var mapView = MGLMapView()
mapView.styleURL = URL(string: "mapbox://styles/davidchopin/cjtz90km70tkk1fo6oxifkd67")
iOS (Objective-C):
// Replace the string in the URL below with your custom style URL from Mapbox
//Studio.
// Read more about style URLs here: https://www.mapbox.com/help/define-style-url/
NSURL *styleURL = [NSURL URLWithString:@"mapbox://styles/davidchopin/cjtz90km70tkk1fo6oxifkd67"];
MGLMapView *mapView = [[MGLMapView alloc] initWithFrame:self.view.bounds
styleURL:styleURL];
Android (Java):
mapboxMap.setStyle(new Style.Builder().fromUrl("mapbox://styles/davidchopin/cjtz90km70tkk1fo6oxifkd67"), new
Style.OnStyleLoaded() {
@Override
public void onStyleLoaded(@NonNull Style style) {
// Custom map style has been loaded and map is now ready
}
});
Android (Kotlin):
mapboxMap.setStyle(Style.Builder().fromUrl("mapbox://styles/davidchopin/cjtz90km70tkk1fo6oxifkd67")) {
// Custom map style has been loaded and map is now ready
}