응답 성이없는 그룹화 된 d3 막대 차트의 응답하지 않는 막대

구운 콩

이것을 가이드로 사용하여 반응 형 그룹화 된 d3 막대 차트 를 만들려고합니다 .

http://blog.webkid.io/responsive-chart-usability-d3/

또한 그룹화 된 차트를 만드는 지침으로 이것을 사용했습니다.

https://bl.ocks.org/mbostock/3887051

이제 창 크기 조정시 축과 격자 선의 크기를 조정하는 차트가 있지만 막대 (직사각형)는 고정 된 상태로 유지됩니다. mbostock 예제의 코드에 따르면 x 축의 크기가 조정될 때 막대가 새 위치로 이동하도록하려면 무엇을 변경해야하는지 명확하지 않습니다.

아래의 3 가지 주요 방법의 코드 샘플. init실행되고 render첫 번째로드를 호출 합니다. 그런 다음 창 크기 조정을위한 이벤트 리스너가 실행됩니다 render.

init 메소드의 코드 :

x = d3.scale.ordinal().domain(data.map(d => d.label));
x1 = d3.scale.ordinal().domain(scales);
y = d3.scale.linear().domain([0, 5]);

xAxis = d3.svg.axis().orient('bottom');
yAxis = d3.svg.axis()
  .orient('left')

svg = d3.select(element).append('svg');
chartWrapper = svg.append('g');
chartWrapper.append('g').classed('x axis', true);
chartWrapper.append('g').classed('y axis', true);

render 메서드의 코드 :

x.rangeBands([0, width]);
x1.rangeRoundBands([0, x.rangeBand()]);
y.range([height, 0]);

svg
  .attr('width', width + margin.right + margin.left)
  .attr('height', height + margin.top + margin.bottom);
chartWrapper.attr('transform', 'translate(' + margin.left + ', ' + margin.top + ')');

xAxis.scale(x);
yAxis.scale(y);

svg.select('.x.axis')
  .attr('transform', 'translate(0, ' + height + ')')
  .call(xAxis)

svg.select('.y.axis')
  .call(yAxis)

bars = svg.selectAll('.bar')
  .data(data)
.enter().append("g")
  .attr("class", "bar")
  .attr("transform", d => "translate(" + x(d.label) + ", 0)");

bars.selectAll("rect")
  .data(d => d.scores)
  .enter()
    .append("rect")
    .attr("transform", "translate(125, 21)")
    .attr("width", x1.rangeBand())
    .attr("x", d => x1(d.name))
    .attr("y", d => y(d.value))
    .attr("height", d => height - y(d.value))

updateDimensions의 코드 :

margin.top = 20;
margin.right = 10;
margin.left = 125;
margin.bottom = 110;

width = elementWidth - margin.left - margin.right;
height = 500 - margin.top - margin.bottom;

또한 viewBox를 사용하여 전체 svg의 크기를 조정하는 것과 같은 반응 형 차트에 대한 다른 솔루션을 살펴 보았습니다. 더 작은 장치의 차트를 수정할 수 있도록 창 크기 조정 이벤트 처리기를 사용하는 방법을 선호합니다.

어떤 도움이라도 대단히 감사합니다.

구운 콩

글쎄, 나는 해결책을 찾았습니다. 좋은 일이라면 Dunno,하지만 일이 끝났습니다!

svg.selectAll('.bar').remove();막대 요소를 추가 하기 전에 추가하는 것이 트릭이었습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

D3 : 그룹화 된 막대 차트의 각 막대 상단에 레이블을 추가하는 방법

분류에서Dev

d3 json 파일을 사용하는 도구 설명이 포함 된 반응 형 그룹 막대 차트

분류에서Dev

반응 + d3 누적 막대 차트를 그룹화하는 방법은 무엇입니까?

분류에서Dev

D3.js를 사용하는 "한 줄로"그룹화 된 막대 차트

분류에서Dev

d3에 다른 그룹이있는 그룹화 된 범주 막대 차트?

분류에서Dev

D3 그룹화 된 막대 차트가 x 척도를 따라 퍼지지 않습니다.

분류에서Dev

ggplot2를 사용하는 R의 그룹화 된 막대 차트

분류에서Dev

그룹화 된 막대 차트에서 D3 브러싱

분류에서Dev

d3에서 그룹화 된 막대 차트 데이터 오른쪽에 두 번째 y 축을 표시하는 방법

분류에서Dev

그룹화 된 막대 차트 (matplotlib)에 음수 값을 표시하는 문제

분류에서Dev

막대 차트에 막대를 그룹화하는 방법이 있습니까?

분류에서Dev

D3 v4 업데이트 막대 그래프가 마지막 막대를 표시하지 않음

분류에서Dev

react-chartjs-2가있는 그룹화 된 막대 차트

분류에서Dev

JavaScript / D3를 사용하는 차트의 간격 막대

분류에서Dev

그룹화 된 값의 막대 차트 또는 히스토그램

분류에서Dev

D3.js의 그룹화 된 막대 차트

분류에서Dev

그룹화 된 막대 그림에 오차 막대를 추가하는 방법은 무엇입니까?

분류에서Dev

CSV 대신 JSON 데이터의 그룹화 된 막대 차트

분류에서Dev

각 스택이 y 축 값에 해당하는 ggplot2의 그룹화 된 누적 막대 차트

분류에서Dev

Altair-DataFrame을 조작하지 않고 그룹화 된 막대 차트를 만드는 방법

분류에서Dev

D3.js 그룹화 된 막대 차트 범례 누락 된 데이터

분류에서Dev

그룹화 된 막대 차트에서 사각형 크기를 줄이는 방법 d3js v4

분류에서Dev

D3.js : 그룹화 된 막대 차트에서 JSON 데이터를 읽는 방법

분류에서Dev

그룹화 된 막대 그림의 ggplot 레이블 막대

분류에서Dev

ggplot2를 사용하여 그룹화 된 막대 차트에 대한 오차 막대를 그리는 방법은 무엇입니까?

분류에서Dev

이 데이터의 그룹화 된 막대 차트 만들기

분류에서Dev

D3.js- 그룹화 된 막대 차트를 확대하는 동안 사각형 외부 영역을 자르는 방법

분류에서Dev

그룹화 된 막대 차트에 대한 데이터 구성

분류에서Dev

Azure AAD-AADSTS50011 : 요청에 지정된 응답 URL이 응용 프로그램에 대해 구성된 응답 URL과 일치하지 않습니다.

Related 관련 기사

  1. 1

    D3 : 그룹화 된 막대 차트의 각 막대 상단에 레이블을 추가하는 방법

  2. 2

    d3 json 파일을 사용하는 도구 설명이 포함 된 반응 형 그룹 막대 차트

  3. 3

    반응 + d3 누적 막대 차트를 그룹화하는 방법은 무엇입니까?

  4. 4

    D3.js를 사용하는 "한 줄로"그룹화 된 막대 차트

  5. 5

    d3에 다른 그룹이있는 그룹화 된 범주 막대 차트?

  6. 6

    D3 그룹화 된 막대 차트가 x 척도를 따라 퍼지지 않습니다.

  7. 7

    ggplot2를 사용하는 R의 그룹화 된 막대 차트

  8. 8

    그룹화 된 막대 차트에서 D3 브러싱

  9. 9

    d3에서 그룹화 된 막대 차트 데이터 오른쪽에 두 번째 y 축을 표시하는 방법

  10. 10

    그룹화 된 막대 차트 (matplotlib)에 음수 값을 표시하는 문제

  11. 11

    막대 차트에 막대를 그룹화하는 방법이 있습니까?

  12. 12

    D3 v4 업데이트 막대 그래프가 마지막 막대를 표시하지 않음

  13. 13

    react-chartjs-2가있는 그룹화 된 막대 차트

  14. 14

    JavaScript / D3를 사용하는 차트의 간격 막대

  15. 15

    그룹화 된 값의 막대 차트 또는 히스토그램

  16. 16

    D3.js의 그룹화 된 막대 차트

  17. 17

    그룹화 된 막대 그림에 오차 막대를 추가하는 방법은 무엇입니까?

  18. 18

    CSV 대신 JSON 데이터의 그룹화 된 막대 차트

  19. 19

    각 스택이 y 축 값에 해당하는 ggplot2의 그룹화 된 누적 막대 차트

  20. 20

    Altair-DataFrame을 조작하지 않고 그룹화 된 막대 차트를 만드는 방법

  21. 21

    D3.js 그룹화 된 막대 차트 범례 누락 된 데이터

  22. 22

    그룹화 된 막대 차트에서 사각형 크기를 줄이는 방법 d3js v4

  23. 23

    D3.js : 그룹화 된 막대 차트에서 JSON 데이터를 읽는 방법

  24. 24

    그룹화 된 막대 그림의 ggplot 레이블 막대

  25. 25

    ggplot2를 사용하여 그룹화 된 막대 차트에 대한 오차 막대를 그리는 방법은 무엇입니까?

  26. 26

    이 데이터의 그룹화 된 막대 차트 만들기

  27. 27

    D3.js- 그룹화 된 막대 차트를 확대하는 동안 사각형 외부 영역을 자르는 방법

  28. 28

    그룹화 된 막대 차트에 대한 데이터 구성

  29. 29

    Azure AAD-AADSTS50011 : 요청에 지정된 응답 URL이 응용 프로그램에 대해 구성된 응답 URL과 일치하지 않습니다.

뜨겁다태그

보관