立刻搞懂 GeoJSON

用於描述地理空間信息的數據格式,語法是基於 JSON 格式的。編程

每個 GeoJSON 對象都有一個 type 屬性:數組

  • Point:點
  • MultiPoint:多點
  • LineString:線
  • MultiLineString:多線
  • Polygon:面
  • MultiPolygon:多面
  • GeometryCollection:幾何體集合
  • Feature:特徵
  • FeatureCollection:特徵集合

分類

  • type:Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygoncode

    則該對象必須有屬性 coordinates,這類對象稱爲幾何對象。對象

    // 點對象
    {
      'type': 'Point',
      'coordinates': [-105, 39]
    }
    // 線對象
    {
      'type': 'LineString',
      'coordinates': [[-105, 39], [-107, 38]]
    }
    // 面對象
    {
      'type': 'Polygon',
      'coordinates': [
        [[30, 0], [31, 0], [31, 5], [30, 5], [30, 0]]
      ]
    }
  • type:GeometryCollectionio

    則該對象必須有屬性 geometries,其值是一個數組,每一項都是一個 GeoJSON 的幾何對象。class

    {
      'type': 'GeometryCollection',
      'geometries': [
        {
          'type': 'Point',
          'coordinates': [100, 40]
        },
        {
          'type': 'LineString',
          'coordinates': [[100, 30], [100, 35]]
        }
      ]
    }
  • type:Feature數據可視化

    則該對象必須有屬性 geometry,其值爲一個幾何對象;此外還有一個屬性 properties,能夠是任意 JSON 或 null可視化

    {
      'type': 'Feature',
      'properties': {
        'name': '北京'
      },
      'geometry': {
        'type': 'Point',
        'coordinates': [116.3671875, 39.977120098439634]
      }
    }
  • type:FeatureCollection語法

    則該對象必須有屬性 features,其值爲一個數組,每一項都是一個 Feature 對象。數據

    {
      'type': 'FeatureCollection',
      'features': [
        {
          'type': ...,
          'properties': ...,
          'geometry': ...
        },
        ...
      ]
    }

參考

  • 《精通D3.js:交互式數據可視化高級編程》
相關文章
相關標籤/搜索