2015-07-28 85 views
0

我使用的是d3.js,我想在我的整個svg畫布上使用畫筆(支持縮放和平移),所以我只是把無窮大範圍中的線性標尺如下:D3.js在無限的範圍內使用d3.svg.brush

d3.svg.brush() 
    .x(d3.scale.linear().range([-Infinity, Infinity])) 
    .y(d3.scale.linear().range([-Infinity, Infinity])) 
    ...() 

刷正在對整個SV,但使用此「特技」

Invalid value for <rect> attribute x="NaN" 

工作實施例當有一些討厭的JavaScript錯誤:http://jsfiddle.net/cn010zt3/

有關如何正確執行此操作的任何想法?

回答

1

D3秤需要實際值,並且不會與Infinity正常工作。無論如何,您無需使用Infinity,因爲您的SVG具有有限的大小 - 只需使用它即可。完整演示here

+0

確實,我以爲事情太多了,謝謝! – JonathanK