diff --git a/src/aesthetics/ScaledAesthetic.ts b/src/aesthetics/ScaledAesthetic.ts index af31072ec..44f1d70be 100644 --- a/src/aesthetics/ScaledAesthetic.ts +++ b/src/aesthetics/ScaledAesthetic.ts @@ -146,7 +146,10 @@ export abstract class ScaledAesthetic< if (this.field === null || isConstantChannel(this.encoding)) { return constant as Output['rangeType']; } - const value = point[this.field] as Input['domainType']; + let value = point[this.field] as Input['domainType']; + for (const subfield of this.subfield) { + value = value[subfield] as Input['domainType']; + } if (value === undefined || value === null) { return constant as Output['rangeType']; } diff --git a/src/interaction.ts b/src/interaction.ts index f6f0f7a22..22e256229 100644 --- a/src/interaction.ts +++ b/src/interaction.ts @@ -96,8 +96,8 @@ export class Zoom { } html_annotation(points: Annotation[]) { - const div = this.svg_element_selection.node()!.parentNode - .parentNode as unknown as string; + const div = this.svg_element_selection.node().parentNode + .parentNode as HTMLDivElement; const els = select(div) .selectAll('div.tooltip') .data(points) diff --git a/src/regl_rendering.ts b/src/regl_rendering.ts index a4cab1789..453854a58 100644 --- a/src/regl_rendering.ts +++ b/src/regl_rendering.ts @@ -956,6 +956,7 @@ export class ReglRenderer extends Renderer { variable_to_buffer_num.set(field, num); continue; } else { + console.log('Overflow'); // Don't use the last value, use the current value. // Loses animation but otherwise plots nicely. // Strategy will break if more than 14 base channels are defined,