当刷子范围相对较小时,我正在处理一个问题。
现在,在画笔中创建的组(g.resize [n,s,e,w等])通过一些内部动作放置到d3画笔。
<g class="resize n" transform="translate(111.77999877929688,120.05999755859375)" style="cursor: ns-resize;">
<rect y="0" width="68.94" height="6" x="0" style="visibility: hidden;">
</rect>
</g>
我的问题是,对于水平边(北部和南部),该组被放置在范围的边缘下方,而对于垂直边(东部和西部),该组被放置在边缘的右侧。该组使用transform将其自身置于svg中。这意味着我的调整大小手柄位于北边和西边的范围内。因此,在小范围内,调整大小操作会干扰我希望在范围上发生的单击操作。我想弄清楚如何确保调整大小组总是在范围之外绘制。
我不想在画笔末端添加调整(也可能在画笔移动时)以重新定位组并调整它的变换。在本机d3代码中是否有一种方法可以控制它们的放置方式?
另外,如何控制此矩形的高度为6?
以外的其他值?答案 0 :(得分:0)
假设有类似的东西:
var brushg = svg.append("g").attr("class", "brush");
var brush = d3.svg.brush();
brushg.call(this.brush);
以下是渲染画笔时可以执行的操作:
brushg.selectAll('.resize')
.select('rect')
.attr('height', '100');
其中修改了调整元素大小的高度。