D3 method
selection.insert
새로운 요소를 삽입하는 메서드
위치를 지정하여 추가할 수 있고, 위치를 지정하지 않으면 선택한 selection 의 자식요소로 추가된다.
selection.clone
선택한 모든 요소를 복제하여 선택한 요소 바로 뒤에 삽입하는 메서드
두번째 인자로 true
를 전달하면, 선택 요소와 그 하위 노드까지 복제한다.
반환시, [선택한 기존 selection & 새로 복제하여 생성된 요소] 를 반환한다.
selection.raise
selection 의 요소를 해당 부모의 마지막 자식으로 DOM 에 다시 삽입한다.
selection 을 부모 노드에 appendChild
한 것과 비슷
selection.lower
selection 의 요소를 해당 부모의 첫번째 자식으로 DOM 에 다시 삽입한다.
selection.sort(compare function)
바인딩된 데이터를 기반으로 selection 요소들을 정렬하는 메서드
compare function 을 기반으로 DOM 에서 선택한 selection 의 위치를 변경한다.
D3 에서 제공하는 비교자를 사용할 수 있다.
compare function: function(a, b)
function 이 음수를 반환하면, 첫번째 요소가 두번째 요소 앞에 위치
function 이 양수를 반환하면, 첫번째 요소가 두번째 요소 뒤에 위치
function 이 0을 반환하면, 정렬이 일어나지 않음
selection.nodes
해당 selection 의 모든 요소를 배열로 반환한다.
Array.from(selection)
과 동일한 기능
seletion.node
해당 selection 의 첫번째 요소를 반환한다.
selection 이 비어있으면 null 반환
selection.call(f, [, arguments...])
메서드가 실행되면 인수로 전달된 function 을 실행한다.
여러 selection 에 실행해야 하는 일련의 처리가 있을 경우 유용하다.
호출된 selection 을 반환 ... 체이닝으로 사용할 수 있다.
회고
D3 데이터 시각화에 사용되는 메서드들을 배웠다.
전체적으로 js의 메서드와 유사한 기능을 하는 메서드들이 많았고, 체이닝을 잘 다루게끔 공부하면 될 것 같다!