billboard.js берет значение измерения из своего родительского узла. В частности, значения смещения - node.offsetWidth / offsetHeight.
В вашем примере родительский элемент
имеет значение поля. JQuery
.width()
возвращается без него.
Итак, в соответствии с процессом, он устанавливает правильное измерение. Если вам нужно обрабатывать значения полей / отступов, вы можете добавить для него другую родительскую оболочку.
<div id="wrapper"> // <-- set margin/padding if you need
<div id="chart">
<svg> ...