Skip to content

Commit a6e7025

Browse files
authored
interpolateNumber by default (#557)
1 parent 84d88b2 commit a6e7025

File tree

2 files changed

+19
-19
lines changed

2 files changed

+19
-19
lines changed

src/scales/quantitative.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ export function ScaleQ(key, scale, channels, {
5555
range = registry.get(key) === radius ? inferRadialRange(channels, domain) : registry.get(key) === opacity ? [0, 1] : undefined,
5656
type,
5757
scheme = type === "cyclical" ? "rainbow" : "turbo",
58-
interpolate = registry.get(key) === color ? (range !== undefined ? interpolateRgb : quantitativeScheme(scheme)) : round ? interpolateRound : undefined,
58+
interpolate = registry.get(key) === color ? (range !== undefined ? interpolateRgb : quantitativeScheme(scheme)) : round ? interpolateRound : interpolateNumber,
5959
reverse,
6060
inset = 0
6161
}) {

test/scales/scales-test.js

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ it("plot(…).scale('x') can return a linear scale", () => {
1919
type: "linear",
2020
domain: [1, 2],
2121
range: [40, 620],
22-
interpolate: d3.interpolate,
22+
interpolate: d3.interpolateNumber,
2323
clamp: false
2424
});
2525
});
@@ -31,7 +31,7 @@ it("plot(…).scale('x') returns the expected linear scale for penguins", async
3131
type: "linear",
3232
domain: [2700, 6300],
3333
range: [20, 620],
34-
interpolate: d3.interpolate,
34+
interpolate: d3.interpolateNumber,
3535
clamp: false,
3636
label: "body_mass_g →"
3737
});
@@ -52,7 +52,7 @@ it("plot(…).scale('x') returns the expected sqrt scale given explicit options"
5252
exponent: 0.5,
5353
domain: [3500, 4000],
5454
range: [30, 610],
55-
interpolate: d3.interpolate,
55+
interpolate: d3.interpolateNumber,
5656
clamp: true,
5757
label: "Body mass"
5858
});
@@ -65,7 +65,7 @@ it("plot(…).scale('x') can return a utc scale", async () => {
6565
type: "utc",
6666
domain: [new Date("2013-05-13"), new Date("2018-05-11")],
6767
range: [40, 620],
68-
interpolate: d3.interpolate,
68+
interpolate: d3.interpolateNumber,
6969
clamp: false
7070
});
7171
});
@@ -77,7 +77,7 @@ it("plot(…).scale('x') can return an explicit time scale", async () => {
7777
type: "time",
7878
domain: [new Date("2013-05-13"), new Date("2018-05-11")],
7979
range: [40, 620],
80-
interpolate: d3.interpolate,
80+
interpolate: d3.interpolateNumber,
8181
clamp: false
8282
});
8383
});
@@ -163,7 +163,7 @@ it("plot(…).scale('y') can return a linear scale", () => {
163163
type: "linear",
164164
domain: [1, 2],
165165
range: [370, 20],
166-
interpolate: d3.interpolate,
166+
interpolate: d3.interpolateNumber,
167167
clamp: false
168168
});
169169
});
@@ -241,7 +241,7 @@ it("plot(…).scale(name) promotes the given zero option to the domain", async (
241241
type: "linear",
242242
domain: [0, 6300],
243243
range: [20, 620],
244-
interpolate: d3.interpolate,
244+
interpolate: d3.interpolateNumber,
245245
clamp: false,
246246
label: "body_mass_g →"
247247
});
@@ -878,7 +878,7 @@ it("plot(…).scale('r') can return an implicit pow scale", () => {
878878
exponent: 0.5,
879879
domain: [0, 9],
880880
range: [0, Math.sqrt(40.5)],
881-
interpolate: d3.interpolate,
881+
interpolate: d3.interpolateNumber,
882882
clamp: false
883883
});
884884
});
@@ -890,7 +890,7 @@ it("plot(…).scale('r') can return a pow scale for sqrt", () => {
890890
exponent: 0.5,
891891
domain: [0, 9],
892892
range: [0, Math.sqrt(40.5)],
893-
interpolate: d3.interpolate,
893+
interpolate: d3.interpolateNumber,
894894
clamp: false
895895
});
896896
});
@@ -902,7 +902,7 @@ it("plot(…).scale('r') can return an explicit pow scale", () => {
902902
exponent: 0.3,
903903
domain: [0, 9],
904904
range: [0, Math.sqrt(40.5)],
905-
interpolate: d3.interpolate,
905+
interpolate: d3.interpolateNumber,
906906
clamp: false
907907
});
908908
});
@@ -914,7 +914,7 @@ it("plot(…).scale('r') can return an implicit pow scale with an explicit range
914914
exponent: 0.5,
915915
domain: [0, 9],
916916
range: [2, 13],
917-
interpolate: d3.interpolate,
917+
interpolate: d3.interpolateNumber,
918918
clamp: false
919919
});
920920
});
@@ -930,7 +930,7 @@ it("plot(…).scale('opacity') can return a linear scale", () => {
930930
type: "linear",
931931
domain: [0, 9],
932932
range: [0, 1],
933-
interpolate: d3.interpolate,
933+
interpolate: d3.interpolateNumber,
934934
clamp: false
935935
});
936936
});
@@ -942,7 +942,7 @@ it("plot(…).scale('opacity') can return a linear scale for penguins", async ()
942942
type: "linear",
943943
domain: [0, 40],
944944
range: [0, 1],
945-
interpolate: d3.interpolate,
945+
interpolate: d3.interpolateNumber,
946946
clamp: false,
947947
label: "Frequency"
948948
});
@@ -955,7 +955,7 @@ it("plot(…).scale('opacity') respects the percent option, affecting domain and
955955
type: "linear",
956956
domain: [0, 11.627906976744185],
957957
range: [0, 1],
958-
interpolate: d3.interpolate,
958+
interpolate: d3.interpolateNumber,
959959
clamp: false,
960960
label: "Frequency (%)",
961961
percent: true
@@ -1087,7 +1087,7 @@ it("plot(…).scale('y') can return a log scale", () => {
10871087
domain: [1, 4],
10881088
range: [380, 20],
10891089
base: 10,
1090-
interpolate: d3.interpolate,
1090+
interpolate: d3.interpolateNumber,
10911091
clamp: false
10921092
});
10931093
});
@@ -1105,7 +1105,7 @@ it("plot(…).scale('y') can return a symlog scale", () => {
11051105
domain: [1, 4],
11061106
range: [380, 20],
11071107
constant: 1,
1108-
interpolate: d3.interpolate,
1108+
interpolate: d3.interpolateNumber,
11091109
clamp: false
11101110
});
11111111
});
@@ -1134,7 +1134,7 @@ it("plot(…).scale(name).domain nices an explicit domain, too", async () => {
11341134

11351135
it("plot(…).scale(name).interpolate reflects the round option for quantitative scales", async () => {
11361136
const penguins = await d3.csv("data/penguins.csv", d3.autoType);
1137-
assert.strictEqual(Plot.dotX(penguins, {x: "body_mass_g"}).plot({x: {round: false}}).scale("x").interpolate, d3.interpolate);
1137+
assert.strictEqual(Plot.dotX(penguins, {x: "body_mass_g"}).plot({x: {round: false}}).scale("x").interpolate, d3.interpolateNumber);
11381138
assert.strictEqual(Plot.dotX(penguins, {x: "body_mass_g"}).plot({x: {round: true}}).scale("x").interpolate, d3.interpolateRound);
11391139
});
11401140

@@ -1195,7 +1195,7 @@ it("plot(…).scale(name) reflects the given transform", async () => {
11951195
domain: [1 / 6300, 1 / 2700],
11961196
range: [20, 620],
11971197
clamp: false,
1198-
interpolate: d3.interpolate,
1198+
interpolate: d3.interpolateNumber,
11991199
transform,
12001200
label: "body_mass_g →"
12011201
});

0 commit comments

Comments
 (0)