proportionalSymbolMap = {
const root = DOM.element("div", {
style: `width:${width}px; height:${width / 1.6}px`
});
yield root;
const map = new mapboxgl.Map({
container: root,
style: "mapbox://styles/mapbox/light-v10",
center: [-120.56827, 37.65],
zoom: 7,
projection: {
name: "lambertConformalConic",
center: [-120, 37],
parallels: [37 + 4 / 60, 38 + 26 / 60]
}
});
map.on("load", () => {
map.addSource("acs-2020-ca-sp3-centroids", {
type: "geojson",
data: caSP3Centroids
});
map.addLayer({
id: "acs-2020-ca-sp3-centroids",
type: "circle",
source: "acs-2020-ca-sp3-centroids",
paint: {
"circle-radius": [
"*",
[
"sqrt",
["*", ["/", ["get", "B02001004"], ["get", "B02001001"]], 100]
],
4
],
"circle-color": [
"let",
"value",
["*", ["/", ["get", "B02001004"], ["get", "B02001001"]], 100],
[
"case",
[">", ["var", "value"], 20],
"#f2f0f7",
[">", ["var", "value"], 10],
"#54278f",
[">", ["var", "value"], 5],
"#756bb1",
[">", ["var", "value"], 1],
"#9e9ac8",
"#cbc9e2"
]
]
}
});
});
invalidation.then(() => map.remove());
}