修改世界国家多边形的json文件以自定义颜色

时间:2016-06-23 08:58:12

标签: javascript json

我正在使用一个JavaScript包来显示CSV文件中纬度/经度坐标之间的全局流量。

JS包调用JSON文件,该文件提供国家多边形形状数据。我希望有些国家能以不同的颜色出现。由于不熟悉JSON,我正在努力修改代码以实现此自定义。我查看过各种教程,但仍然没有错误或根本没有效果。

以下是阿富汗的示例JSON代码:

{     "输入":" FeatureCollection",     "功能":[{         "输入":"功能",         "属性":{             "姓名":"阿富汗"         },         " geometry":{             "输入":" Polygon",             "坐标":[                 [                     [61.210817,35.650072],                     [62.230651,35.270664],                     [62.984662,35.404041],                     [63.193538,35.857166],                     [63.982896,36.007957],                     [64.546479,36.312073],                     [64.746105,37.111818],                     [65.588948,3.305217],                     [65.745631,37.661164],                     [66.217385,37.39379],                     [66.518607,37.362784],                     [67.075782,37.356144],                     [67.83,37.144994],                     [68.135562,37.023115],                     [68.859446,37.344336],                     [69.196273,37.151144],                     [69.518785,3.608997],                     [70.116578,37.588223],                     [70.270574,37.735165],                     [70.376304,38.138396],                     [70.806821,38.486282],                     [71.348131,38.258905],                     [71.239404,37.953265],                     [71.541918,37.905774],                     [71.448693,37.065645],                     [71.844638,36.738171],                     [72.193041,36.948288],                     [72.63689,37.047558],                     [73.260056,37.495257],                     [73.948696,37.421566],                     [74.980002,37.41999],                     [75.158028,37.133031],                     [74.575893,37.020841],                     [74.067552,36.836176],                     [72.920025,36.720007],                     [71.846292,36.509942],                     [71.262348,36.074388],                     [71.498768,35.650563],                     [71.613076,35.153203],                     [71.115019,34.733126],                     [71.156773,34.348911],                     [70.881803,33.988856],                     [69.930543,34.02012],                     [70.323594,33.358533],                     [69.687147,33.105499],                     [69.262522,32.501944],                     [69.317764,31.901412],                     [68.926677,31.620189],                     [68.556932,31.71331],                     [67.792689,31.58293],                     [67.683394,31.303154],                     [66.938891,31.304911],                     [66.381458,30.738899],                     [66.346473,29.887943],                     [65.046862,29.472181],                     [64.350419,29.560031],                     [64.148002,29.340819],                     [63.550261,29.468331],                     [62.549857,29.318572],                     [60.874248,29.829239],                     [61.781222,30.73585],                     [61.699314,31.379506],                     [60.941945,31.548075],                     [60.863655,32.18292],                     [60.536078,32.981269],                     [60.9637,33.528832],                     [60.52843,33.676446],                     [60.803193,34.404102],                     [61.210817,35.650072]                 ]             ]         },         " id":" AFG",         "颜色":"#000"     }] }

1 个答案:

答案 0 :(得分:0)

我假设你在玩D3。 确保已加载topojson然后使用

d3.json ( url , function (error, world) {  
var countries = topojson.feature(world, world.objects.countries).features;
  countries.forEach ( function (country,index) { 
    if ( country.properties.name  =="Afghanistan" ) country.properties.color ='#color';
   });
});

如果你不使用D3 - 忽略我的回复;)