D3.js es una biblioteca construida con javascript y particularmente utilizada para la visualización de datos. La función D3.nest() se usa para agrupar los datos como lo hace la cláusula groupBy en SQL. Agrupa los datos en base a claves y valores.
Sintaxis:
d3.nest()
Parámetros: Esta función no acepta ningún parámetro.
Valor devuelto: Devuelve el objeto con varias propiedades como entradas, claves, valores, mapa, clasificación.
Ejemplo 1: En este ejemplo, los datos se agruparán en función de la clave «fabricada». También podemos agrupar los datos en función de varias claves.
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" path1tent= "width=device-width, initial-scale=1.0"> <script src="https://d3js.org/d3.v4.min.js"> </script> <title> D3.js d3.nest() Function </title> </head> <body> <script> var cars = [ { name: "car1", manufactured: "1950", model: "s51" }, { name: "car1", manufactured: "1950", model: "s51" }, { name: "car1", manufactured: "1951", model: "s50" }, { name: "car1", manufactured: "1951", model: "s50" }, ]; var groupedData = d3.nest() .key(function (d) { return d.manufactured; }) .entries(cars); console.log("ArrayData :", groupedData); console.log("ArrayData[0] :", groupedData[0]); console.log("ArrayData[1] :", groupedData[1]); </script> </body> </html
Producción:
Los datos se agrupan por año de fabricación con clave 1950 y 1951.
Ejemplo 2: Este ejemplo explica la agrupación de datos sobre la base de varias claves.
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" path1tent= "width=device-width, initial-scale=1.0"> <script src="https://d3js.org/d3.v4.min.js"> </script> <title> D3.js d3.nest() Function </title> </head> <body> <script> var cars = [ { name: "car1", manufactured: "1950", model: "s51" }, { name: "car1", manufactured: "1950", model: "s51" }, { name: "car1", manufactured: "1951", model: "s50" }, { name: "car1", manufactured: "1951", model: "s50" }, ]; var groupedData = d3.nest() .key(function (d) { return d.manufactured; }) .key(function (d) { return d.model; }) .entries(cars); console.log("ArrayData :", groupedData); console.log("ArrayData[0] :", groupedData[0]); console.log("ArrayData[1] :", groupedData[1]); </script> </body> </html>
Producción:
Los datos se agrupan primero por año de fabricación y luego por el número de modelo.