vegalite({
data: {values: data},
transform: [{calculate: "datum.temp_max - datum.temp_min", as: "temp_range"}],
mark: "line",
encoding: {
x: {timeUnit: "month", field: "date", type: "temporal"},
y: {aggregate: "mean", field: "temp_range", type: "quantitative"}
}
})