La función secuencial.copia() en D3.js se usa para construir y devolver una copia de la escala original. Cualquier cambio en la escala original no afectará la escala de la copia y viceversa. Las escalas secuenciales son similares a las escalas continuas. En una escala continua, el mapeo se realiza de forma continua entre dominio y rango. La única diferencia es que el rango de salida de esta escala está fijado por su interpolador y este rango no se puede cambiar.
Sintaxis:
sequential.copy()
Parámetros: Esta función no acepta ningún parámetro.
Valores devueltos: esta función devuelve la copia de la escala original.
A continuación se dan algunos ejemplos de secuencial.copy() en D3.js:
Ejemplo 1:
HTML
<!DOCTYPE html> <html> <head> <script src="https://d3js.org/d3.v6.min.js"> </script> </head> <body> <h2 style="color:green"> GeeksforGeeks </h2> <h4> D3.js | sequential.copy() Function </h4> <script> var sequential = d3.scaleSequential(); // Default scale is identity function document.write("<h4>From original scale:</h4>") document.write("<p>sequential(0.2): ", sequential(0.2) + "</p>"); document.write("<p>sequential(0.5): ", sequential(0.5) + "</p>"); // Creating copy of the original scale var sequentialCopy = sequential.copy(); document.write("<h4>From copy scale:</h4>") document.write("<p>sequentialCopy(0.2): ", sequentialCopy(0.2) + "</p>"); document.write("<p>sequentialCopy(0.5): ", sequentialCopy(0.5) + "</p>"); </script> </body> </html>
Producción:
Ejemplo 2: cualquier cambio en la escala de copia no afecta la escala original.
HTML
<!DOCTYPE html> <html> <head> <script src="https://d3js.org/d3.v6.min.js"> </script> </head> <body> <h2 style="color:green"> GeeksforGeeks </h2> <h4> D3.js | sequential.copy() Function </h4> <script> var sequential = d3.scaleSequential(); // Default scale is identity function document.write("<h4>From original scale:</h4>"); document.write("<p>sequential(0.4): ", sequential(0.4) + "</p>"); document.write("<p>sequential(0.6): ", sequential(0.6) + "</p>"); // Creating copy of the original scale var sequentialCopy = sequential.copy(); sequentialCopy.domain([1, 2]); document.write( "<h4>From copy scale after changing domain:</h4>"); document.write("<p>sequentialCopy(0.4): ", sequentialCopy(0.4) + "</p>"); document.write("<p>sequentialCopy(0.6): ", sequentialCopy(0.6) + "</p>"); </script> </body> </html>
Producción: