Una traslación vertical mueve el gráfico de una función hacia arriba o hacia abajo modificando sus valores de salida.
Una traslación vertical desplaza el gráfico de una función sobre el eje Y. La forma de la curva se mantiene, pero todos sus valores suben o bajan la misma cantidad.
En programación se usa para ajustar niveles base, centrar gráficos, mover animaciones y convertir valores matemáticos a posiciones visibles.
Si tenemos una función base f(x), una traslación vertical se obtiene sumando una constante al resultado.
Si k es positivo, el gráfico sube. Si k es negativo, el gráfico baja.
La traslación vertical modifica la salida de la función. La horizontal modifica la entrada.
| Tipo | Forma | Qué cambia |
|---|---|---|
| Horizontal | f(x - h) | La entrada x |
| Vertical | f(x) + k | La salida y |
Tomemos nuevamente una función cuadrática simple como punto de partida.
function cuadratica(x) {
return x * x;
}
console.log(cuadratica(-2));
console.log(cuadratica(0));
console.log(cuadratica(2));
Para mover una función hacia arriba, se suma una constante positiva a su resultado.
function cuadratica(x) {
return x * x;
}
function arriba(x) {
return cuadratica(x) + 3;
}
console.log(arriba(-2));
console.log(arriba(0));
console.log(arriba(2));
El mínimo de la parábola pasa de y = 0 a y = 3.
Para mover una función hacia abajo, se suma una constante negativa o se resta una cantidad al resultado.
function cuadratica(x) {
return x * x;
}
function abajo(x) {
return cuadratica(x) - 4;
}
console.log(abajo(-2));
console.log(abajo(0));
console.log(abajo(2));
El mínimo de la parábola pasa de y = 0 a y = -4.
La traslación vertical suma la misma cantidad a todos los valores de salida.
function cuadratica(x) {
return x * x;
}
function desplazada(x) {
return cuadratica(x) + 5;
}
for (let x = -2; x <= 2; x++) {
console.log({
x,
original: cuadratica(x),
desplazada: desplazada(x)
});
}
Podemos crear una función reutilizable que transforme cualquier función sumando una constante a su salida.
function trasladarVertical(funcion, k) {
return function(x) {
return funcion(x) + k;
};
}
function cuadratica(x) {
return x * x;
}
const subida = trasladarVertical(cuadratica, 10);
const bajada = trasladarVertical(cuadratica, -10);
console.log(subida(2));
console.log(bajada(2));
Si un punto de la función original es (x, y), al desplazar la función verticalmente se conserva la coordenada X y cambia la coordenada Y.
Por ejemplo, el punto (0, 0) de la función x² pasa a (0, 5) si se desplaza 5 unidades hacia arriba.
Si ya tenemos puntos calculados para graficar, la traslación vertical puede aplicarse directamente sobre la coordenada Y.
function desplazarPuntosVertical(puntos, k) {
return puntos.map(function(punto) {
return {
x: punto.x,
y: punto.y + k
};
});
}
const puntos = [
{ x: -1, y: 1 },
{ x: 0, y: 0 },
{ x: 1, y: 1 }
];
console.log(desplazarPuntosVertical(puntos, 3));
En funciones periódicas, una traslación vertical permite definir el centro de una oscilación.
El valor centro es una traslación vertical de la onda seno.
Este ejemplo crea una onda que oscila alrededor de un valor central distinto de cero.
function onda(tiempo, centro, amplitud) {
return centro + Math.sin(tiempo) * amplitud;
}
function redondear(valor) {
return Math.round(valor * 1000) / 1000;
}
console.log(redondear(onda(0, 100, 20)));
console.log(redondear(onda(Math.PI / 2, 100, 20)));
console.log(redondear(onda(3 * Math.PI / 2, 100, 20)));
En pantalla, el eje Y suele crecer hacia abajo. Esto puede hacer que sumar a la coordenada Y mueva visualmente un punto hacia abajo.
| Sistema | y + k | y - k |
|---|---|---|
| Matemático | Sube | Baja |
| Pantalla | Baja | Sube |
Al dibujar una función, muchas veces se usa una traslación vertical para ubicar el origen en el centro de la pantalla.
function aPantalla(punto, origen, escala) {
return {
x: origen.x + punto.x * escala,
y: origen.y - punto.y * escala
};
}
console.log(aPantalla({ x: 0, y: 0 }, { x: 200, y: 150 }, 20));
console.log(aPantalla({ x: 2, y: 3 }, { x: 200, y: 150 }, 20));
Una traslación vertical puede convertir una señal centrada en cero en una señal siempre positiva.
function señal(tiempo) {
return Math.sin(tiempo);
}
function señalPositiva(tiempo) {
return señal(tiempo) + 1;
}
function redondear(valor) {
return Math.round(valor * 1000) / 1000;
}
console.log(redondear(señalPositiva(0)));
console.log(redondear(señalPositiva(Math.PI / 2)));
console.log(redondear(señalPositiva(3 * Math.PI / 2)));
La señal original va de -1 a 1. La señal trasladada va de 0 a 2.
En un juego o simulación, una traslación vertical puede agregar un valor base a una función de crecimiento.
function crecimiento(nivel) {
return nivel * nivel;
}
function dificultad(nivel) {
const base = 10;
return crecimiento(nivel) + base;
}
console.log(dificultad(1));
console.log(dificultad(3));
console.log(dificultad(5));
Las traslaciones verticales son una de las transformaciones más directas: solo se suma o resta una cantidad a la salida de la función. Esta idea simple permite ajustar gráficos, animaciones y señales sin alterar la forma original del comportamiento.