Transformations of functions: shifts, stretches and reflections

Many students first encounter function transformations when a graph no longer resembles the parent function they were taught. A graph may move across the page, stretch vertically or appear in the opposite direction. Each change follows a consistent rule, so the new shape can be predicted rather than guessed.

The central distinction is between changing a function’s input and changing its output. A modification inside the brackets affects the input, while a modification outside the brackets affects the output. This distinction explains why (f(x+3)) and (f(x)+3) produce different horizontal and vertical movements.

Shifts, stretches, compressions and reflections can also be combined. The important information is carried by the signs and numerical factors in the transformed equation. Recognising these patterns makes it easier to trace important points, identify intercepts and describe the graph accurately.

How transformations reshape a parent graph

A parent function provides an unscaled reference graph. For example, (y=x^2) is the parent graph of a basic quadratic, while (y=|x|) is the parent graph of an absolute-value function. Transformations adjust that reference without changing the basic algebraic relationship represented by the function.

Changes outside the brackets alter the output. Adding a number moves the graph vertically, multiplying the output changes its height, and placing a negative sign in front reverses it vertically. Changes inside the brackets alter the input. These affect the graph’s horizontal position, scale or direction.

These ideas can be combined in a general form such as

[ g(x)=a,f\bigl(b(x-h)\bigr)+k. ]

Here, (h) controls horizontal translation, (k) controls vertical translation, (a) controls vertical scale and reflection, and (b) controls horizontal scale and reflection. A point ((u,v)) on the original graph becomes (\left(h+\frac{u}{b},,av+k\right)) on the transformed graph.

Moving a graph up, down and across

A vertical shift is described by adding or subtracting a constant outside the function. The graph (y=f(x)+k) moves up (k) units when (k) is positive and down (|k|) units when it is negative. Every point keeps the same horizontal coordinate, but its vertical coordinate changes by the same amount.

A horizontal shift is represented by replacing (x) with (x-h). The graph (y=f(x-h)) moves (h) units to the right for positive (h). Replacing (x) with (x+h) moves it to the left because (f(x+3)=f(x-(-3))). The order of the terms inside the brackets matters.

A Sydney rail timetable illustrates the difference. If the expected journey time increases by ten minutes, the output changes from (f(x)) to (f(x)+10). If the whole timetable moves fifteen minutes earlier, the input becomes (f(x-15)). One change alters journey duration, while the other alters departure time.

For quadratic graphs, standard versus vertex form is a useful reference because the vertex records the horizontal and vertical movement directly. Changing (y=x^2) into (y=(x-2)^2+1) moves the graph two units right and one unit up, moving its vertex from ((0,0)) to ((2,1)).

Stretching and compressing a graph

Multiplying the entire function by a constant creates a vertical stretch or compression. In (y=2f(x)), every output doubles, so points become twice as far from the (x)-axis. In (y=\frac12 f(x)), every output halves, bringing points closer to the (x)-axis. The horizontal coordinates remain unchanged.

Horizontal scaling works differently because it changes the inputs used to generate the outputs. In (y=f(2x)), each original (x)-coordinate is divided by two, producing a horizontal compression. In (y=f\left(\frac{x}{2}\right)), the horizontal coordinates double, creating a stretch. This is why the coefficient inside the brackets appears as its reciprocal when describing the new horizontal distances.

A price reduction at Coles or Woolworths provides an everyday example. If a shelf price in Australian dollars is represented by (p), a temporary 20 per cent discount changes it to (0.8p). The graph is compressed vertically by a factor of (0.8), rather than shifted, because every price is multiplied by the same proportion.

Reflections and a rule set for graph changes

Reflection reverses a graph across an axis. Replacing (f(x)) with (-f(x)) reflects the graph across the (x)-axis because each output changes sign. Replacing (x) with (-x) reflects it across the (y)-axis because every point receives the opposite input. Using both produces a half-turn about the origin.

For directional and positional changes, keep these rules in mind:

For changes in size and orientation, use the corresponding rules:

Several transformations can occur in one equation, so the signs and factors should be read systematically. For (y=-2f(3x-6)+5), the graph is compressed horizontally by a factor of three, shifted two units right, stretched vertically by a factor of two, reflected across the (x)-axis and moved five units upward.

A lasting way to read transformed graphs

Start with the parent graph, then examine the equation from the inside outwards. Identify the value inside the brackets, determine the horizontal shift, inspect the factor multiplying the function and finally locate the constant outside. Substituting the original (x)-intercept or vertex into the transformed equation confirms the result.

These methods also transfer to familiar Australian settings. On Melbourne’s tram network, distance travelled can be treated as an input and the fare as an output, making a fare adjustment a vertical shift and a change in distance zones a change of gradient. Brisbane’s January summer, which falls in the opposite season to much of the northern hemisphere, can be represented as a horizontal phase shift in an annual temperature cycle.

The lasting point is that transformations of functions follow an ordered input-and-output logic: inner changes alter position or scale horizontally, outer changes alter position or scale vertically, and negative signs reverse direction across the relevant axis.