|
1 | 1 | import {group as grouper, sort, InternSet} from "d3"; |
2 | 2 | import {defined} from "../defined.js"; |
3 | | -import {valueof, maybeColor, maybeTransform, maybeValue, maybeLazyChannel, lazyChannel, first, second, identity, take} from "../mark.js"; |
| 3 | +import {valueof, maybeColor, maybeTransform, maybeValue, maybeLazyChannel, lazyChannel, first, identity, take, maybeTuple} from "../mark.js"; |
4 | 4 |
|
5 | 5 | export function groupX({x, ...options} = {}) { |
6 | 6 | const [transform, X, y, z, fill, stroke] = group1(x, options); |
@@ -84,8 +84,9 @@ function group1(x = identity, {domain, normalize, ...options} = {}) { |
84 | 84 |
|
85 | 85 | function group2(xv, yv, {domain, normalize, ...options} = {}) { |
86 | 86 | const {z, fill, stroke} = options; |
87 | | - const {value: x = first, domain: xdomain} = {domain, ...maybeValue(xv)}; |
88 | | - const {value: y = second, domain: ydomain} = {domain, ...maybeValue(yv)}; |
| 87 | + let {value: x, domain: xdomain} = {domain, ...maybeValue(xv)}; |
| 88 | + let {value: y, domain: ydomain} = {domain, ...maybeValue(yv)}; |
| 89 | + ([x, y] = maybeTuple(x, y)); |
89 | 90 | const k = normalize === true ? 100 : +normalize; |
90 | 91 | const [X, setX] = lazyChannel(x); |
91 | 92 | const [Y, setY] = lazyChannel(y); |
|
0 commit comments