diff --git a/site/_includes/docs_toc.md b/site/_includes/docs_toc.md index e658f7baf1..35cfa70926 100644 --- a/site/_includes/docs_toc.md +++ b/site/_includes/docs_toc.md @@ -287,6 +287,7 @@ - [Nominal]({{site.baseurl}}/docs/type.html#nominal) - [GeoJSON]({{site.baseurl}}/docs/type.html#geojson) - [Value]({{site.baseurl}}/docs/value.html) + - [Examples]({{site.baseurl}}/docs/value.html#examples) - [Projection]({{site.baseurl}}/docs/projection.html) - [Documentation Overview]({{site.baseurl}}/docs/projection.html#documentation-overview) - [Projection Properties]({{site.baseurl}}/docs/projection.html#projection-properties) @@ -329,6 +330,7 @@ - [Using Parameters]({{site.baseurl}}/docs/parameter.html#using-parameters) - [Selection Configuration]({{site.baseurl}}/docs/parameter.html#config) - [Value]({{site.baseurl}}/docs/value.html) + - [Examples]({{site.baseurl}}/docs/value.html#examples) - [Expr]({{site.baseurl}}/docs/parameter.html) - [Documentation Overview]({{site.baseurl}}/docs/parameter.html#documentation-overview) - [Defining a Parameter]({{site.baseurl}}/docs/parameter.html#defining-a-parameter) diff --git a/src/compile/mark/encode/defined.ts b/src/compile/mark/encode/defined.ts index 7b0f9bfdcd..a73fcd4f99 100644 --- a/src/compile/mark/encode/defined.ts +++ b/src/compile/mark/encode/defined.ts @@ -30,7 +30,7 @@ function allFieldsInvalidPredicate( const scaleComponent = model.getScaleComponent(channel); if (scaleComponent) { const scaleType = scaleComponent.get('type'); - const field = model.vgField(channel, {expr: 'datum'}); + const field = model.vgField(channel, {expr: 'datum', binSuffix: model.stack?.impute ? 'mid' : undefined}); // While discrete domain scales can handle invalid values, continuous scales can't. if (field && hasContinuousDomain(scaleType)) { diff --git a/test/compile/mark/area.test.ts b/test/compile/mark/area.test.ts index 355e6971eb..e1baae809f 100644 --- a/test/compile/mark/area.test.ts +++ b/test/compile/mark/area.test.ts @@ -53,6 +53,10 @@ describe('Mark: Area', () => { it('should use bin_mid for x', () => { expect(props.x).toEqual({field: 'bin_maxbins_10_IMDB_Rating_mid', scale: 'x'}); }); + + it('should use bin_mid for the defined check', () => { + expect(props.defined['signal']).toContain('bin_maxbins_10_IMDB_Rating_mid'); + }); }); describe('vertical area, with zero=false', () => {