{
const baseLayer = vl.markRect().encode(
vl.x().fieldN("ay"),
vl.y().fieldN("short_title").sort(vl.fieldN("course")),
vl.tooltip("course"),
vl
.color()
.count()
.scale({ range: ["#E1FE72", "#8BE68A", "#44C8A1", "#2AA5A8"] })
);
const textLayer = vl
.markText({ color: "#000", opacity: "0.5" })
.encode(
vl.x().fieldN("ay"),
vl.y().fieldN("short_title").sort(vl.fieldN("course")),
vl.text().count()
);
return vl.layer(baseLayer, textLayer).data(df).render({ renderer: "svg" });
}