D3js는 웹에서 사용하는 자바스크립트 라이브러리 이다. 일반적으로 웹페이지 Head태그내에 선언하여 사용한다.
<script src="https://d3js.org/d3.v3.min.js" charset="utf-8"></script>
기본적인 html 코드
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="utf-8"> <title>D3js 기본파일</title> <script src="https://d3js.org/d3.v3.min.js" charset="utf-8"></script> </head> <body> </body> </html>
하기 코드는 javascript 태그 내에서 기술하여야 한다. 그리고, 하기 태그가 실행되기 전 #d3object 가 선언되어 있어야 한다. d3를 이용하여 id가 d3object인 요소에 p 요소를 추가, html 코드 및 스타일을 변환하는 예제 코드 이다.
// d3object DIV요소 마지막에 p 요소를 추가하고 p변수에 반환 var p = d3.select('#d3object').append('p'); // 변수 p를 이용하여 제어 가능 p.html('P요소 추가').style('color','red');
D3js는 데이터 기반, 요소와 데이터를 바인딩하여 DOM을 표현하는 라이브러리 이다. 하기 코드는 데이터 바인딩의 가장 기초적인 구성이다.
var data = [1, 5, 10, 15]; d3.select('#d3object').selectAll('div') // a .data(data) // b .enter() // c .append('div') // d .html(function(d) {return d;}); // ea : id가 'd3object' 요소의 하위에 div 셀렉션(비어있는 객체)을 생성
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="utf-8"> <title> D3js 데이터 바인딩 테스트</title> <script src="https://d3js.org/d3.v3.min.js" charset="utf-8"></script> </head> <body> <div id="d3object"> </div> <script type="text/javascript"> var data = [1, 5, 10, 15]; d3.select('#d3object').selectAll('div') // a .data(data) // b .enter() // c .append('div') // d .html(function(d) {return d;}); // e </script> </body> </html>id가 d3object 요소 내에 div가 하나도 존재하지 않으므로 enter()에서 모두 생성하였다.