Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
ukr_blue = d3
.scaleLinear()
.domain(d3.extent(ukraineRefugees.map((d) => d.refugees)))
.range(["#d5e1f0", "#2356b2"])
.interpolate(d3.interpolateHcl)
Insert cell
Insert cell
ukraineRefugees = FileAttachment("ukraine-refugees.json").json()
Insert cell
Insert cell
path = d3.geoPath(lambertAzimuthalEqualArea)
Insert cell
Insert cell
lambertAzimuthalEqualArea = d3
.geoAzimuthalEqualArea()
.rotate([-20.0, -52.0])
.translate([width / 2, height / 2])
.scale(700)
.precision(0.1)
Insert cell
eurasia = topojson.feature(countries, countries.objects.countries).features
Insert cell
countries = FileAttachment("countries-110m.json").json()
Insert cell
import { graticule } with { projection } from "@d3/world-map"
Insert cell
d3 = require("d3@7", "d3-geo@3", "d3-geo-projection@4")
Insert cell
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more