{
const brush = vl.selectInterval()
.resolve('intersect');
const legend = vl.selectPoint()
.fields('Year')
.bind('legend');
const brushAndLegend = vl.and(brush, legend);
return vl.markCircle()
.data(data1)
.params(brush, legend)
.encode(
vl.x().fieldQ(vl.repeat('column')),
vl.y().fieldQ(vl.repeat('row')),
vl.color().if(brushAndLegend, vl.fieldO('Year')).value('grey'),
vl.opacity().if(brushAndLegend, vl.value(0.8)).value(0.1),
vl.tooltip(['Title', 'Rating', 'Revenue (Millions)'])
)
.width(170)
.height(150)
.repeat({
column: ['Metascore','Rating','Revenue (Millions)','Votes'],
row: ['Votes', 'Revenue (Millions)','Rating','Metascore']
})
.render();
}