@antv/f2
Version:
Charts for mobile visualization.
36 lines • 979 B
JavaScript
import { jsx } from '@antv/f-engine';
export default (function (props) {
var coord = props.coord,
node = props.node,
onClick = props.onClick;
var children = node.children;
var _a = coord.center,
x = _a.x,
y = _a.y;
var renderNodes = function renderNodes(nodes) {
return jsx("group", null, nodes.map(function (node) {
var xMin = node.xMin,
xMax = node.xMax,
yMin = node.yMin,
yMax = node.yMax,
color = node.color,
children = node.children;
return jsx("group", {
onClick: onClick
}, jsx("sector", {
attrs: {
cx: x,
cy: y,
lineWidth: '1px',
stroke: '#fff',
startAngle: "".concat(xMin, " rad"),
endAngle: "".concat(xMax, " rad"),
r0: yMin,
r: yMax,
fill: color
}
}), children && children.length ? renderNodes(children) : null);
}));
};
return renderNodes(children);
});