Función D3.js geoCraster()

La función geoCraster() en d3.js se usa para dibujar la proyección parabólica de Craster de los datos geojson dados. Una proyección parabólica de Craster también se conoce como Putniņš P4.

Sintaxis :

d3.geoCraster()

Parámetros: este método no acepta ningún parámetro.

Valor devuelto: este método devuelve la proyección de Craster.

Ejemplo 1 : El siguiente ejemplo dibuja la proyección Craster del mundo con el centro en (0, 0) y una rotación de 0 grados.

HTML

<!DOCTYPE html>
<html>
  
<head>
    <script src="https://d3js.org/d3.v4.js">
    </script>
    <script src=
"https://d3js.org/d3-geo-projection.v2.min.js">
    </script>
</head>
  
<body>
    <div style="width:700px; height:500px;">
        <center>
            <h3 style="color:black"></h3>
        </center>
        <svg width="600" height="450">
        </svg>
    </div>
      
    <script>
        var svg = d3.select("svg"),
            width = +svg.attr("width"),
            height = +svg.attr("height");
  
        // Craster projection
        // Center at (0,0) with 0 degrees
        // rotation
        var gfg = d3.geoCraster()
            .scale(width / 1.8 / Math.PI)
            .rotate([0, 0])
            .center([0, 0])
            .translate([width / 2, height / 2]);
  
        // Loading the json data
        d3.json("https://raw.githubusercontent.com/" +
            "janasayantan/datageojson/master/" +
            "world.json",
            function (data) {
  
                // Drawing the map
                svg.append("g")
                    .selectAll("path")
                    .data(data.features)
                    .enter().append("path")
                    .attr("fill", "Black")
                    .attr("d", d3.geoPath()
                        .projection(gfg)
                    )
                    .style("stroke", "#ffff")
            });
    </script>
</body>
  
</html>

Producción:

Ejemplo 2: El siguiente ejemplo dibuja la proyección de Craster del mundo con el centro en (0, 20) y una rotación de -45 grados con respecto al eje y.

HTML

<!DOCTYPE html>
<html>
  
<head>
    <script src="https://d3js.org/d3.v4.js">
    </script>
    <script src=
"https://d3js.org/d3-geo-projection.v2.min.js">
    </script>
</head>
  
<body>
    <div style="width:700px; height:600px;">
        <center>
            <h3 style="color:black"></h3>
        </center>
        <svg width="500" height="450">
        </svg>
    </div>
      
    <script>
        var svg = d3.select("svg"),
            width = +svg.attr("width"),
            height = +svg.attr("height");
  
        // Craster  projection
        // Center(0,20) and -45 degree
        // rotation w.r.t y-axis
        var gfg = d3.geoCraster()
            .scale(width / 1.8 / Math.PI)
            .rotate([-45, 0])
            .center([0, 20])
            .translate([width / 2, height / 2]);
  
        // Loading the json data
        d3.json("https://raw.githubusercontent.com/" +
            "janasayantan/datageojson/master/" +
            "world.json",
            function (data) {
  
                // Draw the map
                svg.append("g")
                    .selectAll("path")
                    .data(data.features)
                    .enter().append("path")
                    .attr("fill", "grey")
                    .attr("d", d3.geoPath()
                        .projection(gfg)
                    )
                    .style("stroke", "#ffff")
            });
    </script>
</body>
  
</html>

Producción:

Publicación traducida automáticamente

Artículo escrito por jana_sayantan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *