2016-08-02 6 views
0

Я создаю график (дерево), используя макет дерева D3.получить ограничительную рамку графа D3

Я хотел бы отрегулировать размер и поле зрения SVG в зависимости от конечного размера диаграммы.

Как я могу получить ограничивающий прямоугольник (min x и y и max x и y) сгенерированного графа?

код, я использую от http://zubasoft.at/2015/05/organigramm-mittels-d3-js-realisieren/

+0

Можете ли вы поделиться какой-то код? Вы посмотрели на 'getBBox()'? – ksav

+0

Спасибо за ваше предложение. Добавлен код. Можем ли мы использовать getBBox() для набора (группы) элементов? –

+0

Он должен работать на svg '' – ksav

ответ

3

Что-то вроде:

var svgBbox = _svg.select("g").getBBox(); 
var h = svgBbox.height; 
var w = svgBbox.width; 
+0

Я попытался добавить оверлейный прямоугольник, показывающий ограничительную рамку, но даже если высота правильная, ширина и x ошибочны. Что может вызвать неправильную ограничительную рамку? –

+0

Возможно, добавьте скрипку или какой-нибудь код на ваш вопрос. – ksav

+0

'Что может вызвать неправильную ограничительную рамку? Возможно, вы добавляете или удаляете элементы или выполняете преобразования * после *, вы вычисляете значения ограничивающих полей. – ksav

Смежные вопросы