>  기사  >  웹 프론트엔드  >  D3.js는 P 요소 생성으로 시작합니다(로드 가능한 데이터 표시)_javascript 팁

D3.js는 P 요소 생성으로 시작합니다(로드 가능한 데이터 표시)_javascript 팁

WBOY
WBOY원래의
2016-05-16 16:32:361422검색

D3는 데이터 작업을 기반으로 하는 시각적 js 라이브러리입니다. d3를 이해하기 위해 가장 기본적인 로드 가능한 데이터 표시부터 시작해 보겠습니다.

HTML의 기본 프레임워크에 대해서는 자세히 설명하지 않고 코드부터 시작해 설명하겠습니다.

새 테스트 디렉터리를 만들고 이 디렉터리에 두 개의 폴더, 데모 및 d3를 만듭니다. 데모는 작성할 html 파일을 저장하고, d3는 d3.v3.js를 저장합니다

데모 폴더에 새 indexP.html을 만들고 다음 코드를 복사한 후 두 번 클릭하여 브라우저에서 열어 효과를 확인하세요.

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8"> 
<title>D3: Setting paragraphs' style conditionally, based on data</title> 
<script type="text/javascript" src="../d3/d3.v3.js"></script> 
</head> 
<body> 
<script type="text/javascript"> 

var dataset = [ 5, 10, 15, 20, 25 ]; 

d3.select("body").selectAll("p") 
.data(dataset) 
.enter() 
.append("p") 
.text(function(d) { 
return "I can count up to " + d; 
}) 
.style("color", function(d) { 
if (d > 15) { //Threshold of 15 
return "red"; 
} else { 
return "black"; 
} 
}); 

</script> 
</body> 
</html> 

이 간단한 데모에서 구현한 기능: 본문에 p 태그를 추가하고, d3에서 로드한 텍스트 내용을 p 태그에 추가하고, 기능 설정 조건에 따라 텍스트 색상을 조정합니다.

위 웹페이지 코드와 본문의 js 코드는 페이지에 표시되는 데이터 연산입니다. 앞으로 많은 예제에서는 이 부분만 수정하면 되고 나머지 부분은 페이지 프레임으로 간주하면 됩니다.

여기의 내용은 이전 기사에서 일반적으로 논의되었습니다. d3 연결을 사용하여 동일한 객체에 대한 단계별 데이터 작업을 연결하면 유지 관리가 쉽습니다.

d3.select("body")는 body 요소를 선택하고 다음 메소드에 연결합니다

.selectAll("p")는 모든 단락을 선택합니다

.data(dataset)는 배열 데이터를 구문 분석하고 로드합니다. 배열의 길이는 5입니다. 각 후속 메소드는 배열 첨자

에 따라 배열 요소에 대해 순서대로 수행됩니다.

.enter()는 새로운 데이터 바인딩된 자리 표시자 요소를 생성합니다(임시로 알려지지 않은 5개의 태그를 생성하는 것과 동일).

생성된 태그 수는 선택한 기존 태그 수와 로드된 데이터 배열의 길이에 따라 결정됩니다.

이 예시처럼 본문에 p 태그가 5개 미만이면 생성해 주세요(현재 본문에 p 태그가 0개 있어서 5개 생성됩니다),

2개 이상이면 생성되지 않습니다. 최종 자리 표시자 요소와 p 요소의 총 개수는 5개여야 합니다.

.append("p")는 자리표시자 요소를 p 요소로 변경합니다

.text(function(d) {}) 각 단락의 표시 내용을 제어하는 ​​익명 함수를 작성합니다. 일반적으로 문자열을 반환합니다. 이 방법으로 원하는 내용을 작성하시면 됩니다.

이 예를 통해 각 단락에 대해 해당 배열 요소 값을 더하여 I can count를 출력할 수 있습니다

함수 형식은 이 방법으로만 함수(d) 함수에 데이터를 로드할 수 있습니다.

.style("color","")는 CSS의 텍스트 색상 속성을 설정합니다. 텍스트와 마찬가지로 설정된 문자열을 사용하여 함수를 사용하여 원하는 작업을 수행할 수 있습니다. 이 예에서는 단락에 해당하는 입력 값이 15보다 크면 줄이 빨간색으로 변합니다

마지막으로 우리가 보는 효과는 아래와 같습니다.

이 기사는 여기까지입니다. 다음에서는 SVG에서 원을 그리는 방법과 원을 연결하는 간단한 힘 다이어그램을 소개합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.