Plot.plot({
width: width,
height: 500,
x: {
axis: null,
},
y: {
type: "point",
tickFormat: i => "SMTWTFS"[i],
tickSize: 0
},
facet: {
data: data,
y: d => d.date.getUTCFullYear(),
},
fy: {
padding: 0.2,
},
marks: [
Plot.text(data, {
x: d => d3.utcWeek.count(d3.utcYear(d.date), d.date),
y: d => d.date.getUTCDay(),
text: (d) => {
const emoji = { "rain": "🌧", "drizzle": "🌦", "fog": "🌫", "sun": "☀️", "snow": "❄️"}
return emoji[d.weather]
},
insetLeft: 2,
insetRight: 2,
fontSize: 12
})
]
})