D3 дерево изменения размера SVG в Angular - PullRequest
1 голос
/ 07 марта 2019

Я изо всех сил пытаюсь выяснить, как изменить размер SVG в реализации Angular D3.Я хочу изменить размер SVG, используя следующую функцию, однако SVG не обновляется.Если я удаляю SVG, то заново добавляю его, он просто полностью исчезает.Любая помощь будет высоко ценится.

const resize = (incremement) => {
            this.height += incremement;
            const height = this.height - this.margin.top - this.margin.bottom;

            const element = this.chartContainer.nativeElement;

            this.tree = d3.layout.tree().size([(height), this.width]);

            // this line removes the svg but it is never re-added. 
            // d3.select(element).remove('svg'); 

            this.svg = d3.select(element).append('svg')
                .attr('width', this.width + this.margin.right + this.margin.left)
                .attr('style', 'border: 1px solid black;')
                .attr('height', height + this.margin.top + this.margin.bottom)
                .append('g')
                .attr('transform', 'translate(' + this.margin.left + ',' + this.margin.top + ')');
            update(this.root);
        };

Приветствия

Ответы [ 2 ]

1 голос
/ 08 марта 2019

Решение было очень простым ...

const resize = (incremement) => {

            this.height = incremement;
            const height = this.height - this.margin.top - this.margin.bottom;

            this.tree = d3.layout.tree().size([(height), this.width]);

            const chart = document.querySelector('#svgChart');
            chart.setAttribute('height', this.height.toString());

            update(this.root);
        };
0 голосов
/ 07 марта 2019

Я столкнулся с аналогичной проблемой с D3Plus, он снова сгенерировал событие resize, не уверен в вашем случае ... требуется удалить старый?Ниже приведен код!надеюсь, это поможет.

window.dispatchEvent(new Event('resize'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...