【发布时间】:2020-05-27 05:10:23
【问题描述】:
我正在尝试使用 Mapbox 制作一张美国地图,按县显示房价中位数。我有一个包含所有县的 .json 文件,并且已经被 Mapbox 瓦片集接受 -
{
"type": "Topology",
"transform": {
"scale": [
0.035896170617061705,
0.005347309530953095
],
"translate": [
-179.14734,
17.884813
]
},
"objects": {
"us_counties_20m": {
"type": "GeometryCollection",
"geometries": [
{
"type": "Polygon",
"arcs": [],
"id": "0500000US01001"
},
{
"type": "Polygon",
"arcs": [],
"id": "0500000US01009"
},
{
"type": "Polygon",
"arcs": [],
"id": "0500000US01017"
},
{
"type": "Polygon",
"arcs": [],
"id": "0500000US01021"
}
]
}
}
}
基本上,它是一个 json 文件,其中包含“type”(多边形)、“arcs”(用于映射县)和“id”,它是县的 ID。
这很好,并且被 Mapbox Tilesets 接受,为我提供按县的可视化,但我需要按县添加房价中位数(以便根据价格按县获得颜色)。
我有第二个 json 文件,它更像一个数组,它有
[
{
"0500000US01001": 51289.0,
"0500000US01009": 46793.0,
"0500000US01017": 39857.0,
"0500000US01021": 48859.0
}
]
等等,但基本上它有 ID -> 每个县的房价中位数。 这两个文件的 ID 相同,数量相同。 所以我需要从中获取第三个 json 文件,它有“type”、“arcs”、“id”和“价格”(加法)。
这些文件很大 - 有什么建议吗?我尝试使用 jq 但收到一个错误
jq: error ... object ({"type":"To...) and array ([{"0500000U...) cannot be multiplied
提前致谢!
【问题讨论】:
-
这是第一个 JSON 的链接 - raw.githubusercontent.com/python-visualization/folium/master/…
-
和第二个 JSON 的链接 - gist.githubusercontent.com/wrobstory/5609959/raw/…
标签: json dictionary join mapbox jq