Plot.plot({
width: 1200,
height: 1200,
color: {
scheme: "viridis"
},
projection: {
type: "azimuthal-equidistant",
rotate: [0, -90],
domain: d3.geoCircle().center([0, 90]).radius(1)()
},
marks:[
Plot.geo([1.0,0.9,0.8,0.7,0.6,0.5, 0.4, 0.3, 0.2, 0.1], {
geometry: (r) => d3.geoCircle().center([0, 90]).radius(r)(),
stroke: "black",
fill: "none",
strokeOpacity: 0.3,
fillOpacity: 0.03,
strokeWidth: 0.5
}),
Plot.link(longitude.domain(), {
x1: longitude,
y1: 90 - 2,
x2: 0,
y2: 90,
stroke: "lightgrey",
strokeOpacity: 0.5,
strokeWidth: 1
}),
Plot.line(temp, {
x: d=> longitude(d.month),
y: d=> 90 - scale(d.temp),
fill: "none",
stroke: "year",
opacity: 0.5
}),
Plot.dot(temp, {
x: d=> longitude(d.month),
y: d=> 90 - scale(d.temp),
fill: "year",
r: 2,
stroke: "white",
strokeWidth: 0.5,
title: d=>d.year + ' ' + d.month
}),
Plot.line([1,2,3,4,5,6,7,8,9,10,11,12],{
x: d=>Math.sin( (d/12.0 ) * 2 * Math.PI ),
y: d=>Math.cos( (d/12.0 ) * 2 * Math.PI ),
stroke: 'black',curve: "catmull-rom"
})
]})