- [010] d3.area2022년 07월 13일
- 루루개발자
- 작성자
- 2022.07.13.:38
반응형d3.area
d3.area 는 선 밑으로 영역을 그릴 때 사용되는 함수입니다.
예제
다음과 같이 typescript 코드를 작성합니다. (js 로의 빌드는 esbuild 등으로 진행 하신 후, 브라우저에서 script 태그로 불러오시면 됩니다.)
import * as d3 from 'd3'; interface Data { x: number; y: number; } window.addEventListener('load', function() { const data: Data[] = [ {x: 0, y: 20}, {x: 10, y: 15}, {x: 20, y: 50}, {x: 30, y: 35}, {x: 40, y: 70}, {x: 50, y: 115}, {x: 60, y: 89}, {x: 90, y: 60}, {x: 125, y: 15}, ]; // data.sort((a, b) => a.y - b.y); console.log('data', data); // const xScale = d3.scaleLinear().domain([0, 6]).range([25, 175]); // const yScale = d3.scaleLinear().domain([0, 20]).range([175, 25]); const area = d3.area<Data>() .x(d => d.x) // 좌표의 x 값 .y0(50) // 영역을 그리는 y 축의 기준 값 (이 축을 기준으로 상, 하 영역이 구분됨.) .y1(d => d.y) // 좌표의 y 값 ; d3.select("svg") .append("path") .attr("d", area(data)) .attr("fill", "green") .attr("stroke", "black"); });
html 코드는 다음과 같이 작성합니다.
<div class="box"> <svg width="300" height="300" style="border: 1px solid #ccc;"> </svg> </div>
결과는 다음과 같습니다.
참고
https://www.geeksforgeeks.org/d3-js-area-method/
반응형'Node.js & Javascript & Typescript > d3.js' 카테고리의 다른 글
[009] d3.arc (0) 2022.07.12 [008] d3.active (0) 2022.07.08 [007] d3.ZoomTransform (0) 2022.06.30 [006] d3.Voronoi (0) 2022.06.29 [005] d3.InternSet (0) 2022.06.28 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)