Open In App

D3.js curveNatural() Method

Last Updated : 09 Sep, 2020
Suggest changes
Share
Like Article
Like
Report

The d3.curveNatural() method produces a natural cubic spline. The curve is also based on the natural cubic splines.

Syntax:

d3.curveNatural()

Parameters: This method does not accept any parameters.

Return Value: This method does not return any value.

Example 1: 

HTML
<!DOCTYPE html> <html> <meta charset="utf-8"> <head> <script src= "https://cdnjs.cloudflare.com/ajax/libs/d3/4.2.2/d3.min.js">  </script> </head> <body> <h1 style="text-align:center; color:green;"> GeeksforGeeks </h1> <center> <svg id="gfg" width="200" height="200"></svg> </center> <script>  var data = [  { x: 0, y: 0 },  { x: 1, y: 3 },  { x: 2, y: 15 },  { x: 5, y: 15 },  { x: 6, y: 1 },  { x: 7, y: 5 },  { x: 8, y: 1 }];  var xScale = d3.scaleLinear()  .domain([0, 8]).range([25, 175]);  var yScale = d3.scaleLinear()  .domain([0, 20]).range([175, 25]);  var line = d3.line()  .x((d) => xScale(d.x))  .y((d) => yScale(d.y))  .curve(d3.curveNatural);  d3.select("#gfg")  .append("path")  .attr("d", line(data))  .attr("fill", "none")  .attr("stroke", "green");  </script> </body> </html> 

Output:

Example 2:

HTML
<!DOCTYPE html> <html> <meta charset="utf-8"> <head> <script src= "https://cdnjs.cloudflare.com/ajax/libs/d3/4.2.2/d3.min.js">  </script> </head> <body> <h1 style="text-align:center; color:green;"> GeeksforGeeks </h1> <center> <svg id="gfg" width="200" height="200"></svg> </center> <script>  var points = [  { xpoint: 25, ypoint: 150 },  { xpoint: 75, ypoint: 85 },  { xpoint: 100, ypoint: 115 },  { xpoint: 175, ypoint: 25 },  { xpoint: 200, ypoint: 150 }];  var Gen = d3.line()  .x((p) => p.xpoint)  .y((p) => p.ypoint)  .curve(d3.curveNatural);  d3.select("#gfg")  .append("path")  .attr("d", Gen(points))  .attr("fill", "none")  .attr("stroke", "green");  </script> </body> </html> 

Output:


Article Tags :

Explore