1 回答

TA貢獻1900條經驗 獲得超5個贊
為了做到這一點,你將不得不做一些事情。首先,您需要從 IMF 獲取有關每個國家的 HDI 得分的數據。幸運的是,您可以從聯合國開發計劃署人類發展 API 獲取這些數據:http: //ec2-54-174-131-205.compute-1.amazonaws.com/API/HDRO_API.php/indicator_id=137506/year =2017
接下來,您必須弄清楚 HDI 表示發達、發展中、欠發達和最不發達。聯合國開發計劃署將人類發展指數分為四類(五類,包括沒有數據的國家):
非常高: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(斯威夫特):
var mapView = MGLMapView()
mapView.styleURL = URL(string: "mapbox://styles/davidchopin/cjtz90km70tkk1fo6oxifkd67")
iOS(目標-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];
安卓(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
}
});
安卓(科特林):
mapboxMap.setStyle(Style.Builder().fromUrl("mapbox://styles/davidchopin/cjtz90km70tkk1fo6oxifkd67")) {
// Custom map style has been loaded and map is now ready
}
添加回答
舉報