Transformations of Functions for the ESAT

Updated July 2026

This lesson covers how to transform the graphs of functions through stretching and translation. Understanding the relationship between algebraic changes to f(x)f(x) and their geometric effects is vital for ESAT success, particularly when dealing with horizontal shifts and combined transformations.

Core concept

Transformations alter the graph of y=f(x)y = f(x) by modifying inputs or outputs: y=f(x)+ay = f(x) + a and y=af(x)y = af(x) affect the vertical position and scale, while y=f(x+a)y = f(x + a) and y=f(ax)y = f(ax) affect the horizontal position and scale.

Understanding the Notation y=f(x)y = f(x)

Before exploring transformations, it is vital to be clear on what y=f(x)y = f(x) represents. This notation tells us that the yy value directly above any given xx value is calculated using the rule f(x)f(x). For example, if we have y=x2+3y = x^2 + 3, then for x=2x = 2, we calculate y=22+3=7y = 2^2 + 3 = 7. Similarly, for x=4x = 4, we find y=19y = 19. We use this principle to deduce how transformed graphs relate to the original.

Vertical Stretches: y=af(x)y = a f(x)

Let us compare y=f(x)=x3y = f(x) = x^3 with y=4f(x)=4x3y = 4f(x) = 4x^3. In this case, every yy value for the second function is four times as large as the yy value for the first function at the same xx coordinate. Geometrically, this represents a vertical stretch by a factor of 4. The stretching occurs away from the xx axis: points with positive yy values move up, and points with negative yy values move down.

img-78.jpeg

In general, y=af(x)y = af(x) is a vertical stretch parallel to the yy axis by a scale factor of aa. Here is the general effect:

img-79.jpeg

If 0<a<10 < a < 1, the graph becomes less tall (it is effectively compressed vertically). If aa is negative, the graph is stretched by a factor of a|a| and reflected in the xx axis.

Vertical Translations: y=f(x)+ay = f(x) + a

Consider y=f(x)=x2y = f(x) = x^2 and y=f(x)+3=x2+3y = f(x) + 3 = x^2 + 3. In this transformation, every yy value increases by 3 units. This shifts the entire graph upwards parallel to the yy axis. Formally, we say the graph of y=f(x)y = f(x) is translated by the vector (0a)\binom{0}{a}.

Note that in trigonometry, we often write a+cosxa + \cos x instead of cosx+a\cos x + a to avoid ambiguity, as cosx+a\cos x + a might be confused with cos(x+a)\cos(x + a). It is also important to remember that cos1x\cos^{-1} x refers to the inverse function (sometimes called arccosx\arccos x) and not 1cosx\frac{1}{\cos x}, which is actually secx\sec x.

Horizontal Translations: y=f(x+a)y = f(x + a)

This transformation is frequently misunderstood. Intuition might suggest that adding aa to xx should shift the graph to the right, but the opposite is true: for positive aa, the graph shifts to the left. To understand why, we must look at how we calculate the expression and how the yy values align.

Working out the expression

To find f(x+a)f(x + a), replace every xx in the original function with (x+a)(x + a).

Example 1: Given f(x)=x2+2x5f(x) = x^2 + 2x - 5, find f(x+3)f(x + 3). We replace xx with x+3x + 3: f(x+3)=(x+3)2+2(x+3)5f(x + 3) = (x + 3)^2 + 2(x + 3) - 5

Example 2: Given f(x)=cos(2x)f(x) = \cos(2x), find f(xπ2)f(x - \frac{\pi}{2}). We replace xx with xπ2x - \frac{\pi}{2}: f(xπ2)=cos2(xπ2)=cos(2xπ)f(x - \frac{\pi}{2}) = \cos 2(x - \frac{\pi}{2}) = \cos(2x - \pi) Note that the factor of 2 multiplies the entire replacement for xx.

Why the shift is reversed

Consider f(x)=2xf(x) = 2^x. On the original graph, when x=5x = 5, y=32y = 32. On the graph of y=f(x+3)y = f(x + 3), the yy value above x=2x = 2 is calculated as f(2+3)=f(5)=32f(2 + 3) = f(5) = 32. This means the yy value that used to be at x=5x = 5 has moved to x=2x = 2. Consequently, the graph must shift 3 units to the left.

img-80.jpeg

img-81.jpeg

In general, y=f(x+a)y = f(x + a) is a translation by (a0)\binom{-a}{0}.

Horizontal Squashes: y=f(ax)y = f(ax)

To find the expression for f(ax)f(ax), replace every xx in f(x)f(x) with (ax)(ax). For example, if f(x)=x2f(x) = x^2, then f(3x)=(3x)2=9x2f(3x) = (3x)^2 = 9x^2. Note that this is not 3x23x^2.

Geometrically, y=f(ax)y = f(ax) squashes the graph towards the yy axis by a factor of aa. If f(x)=x33x2+2f(x) = x^3 - 3x^2 + 2, then the yy value found at x=2x = 2 in the original function will now be found at x=1x = 1 in f(2x)f(2x), because f(2×1)=f(2)f(2 \times 1) = f(2).

img-82.jpeg

img-83.jpeg

If 0<a<10 < a < 1, the graph is stretched horizontally away from the yy axis. If a<0a < 0, there is a reflection in the yy axis.

Summary Table of Transformations

TransformationGeometric Effect
af(x)af(x)Vertical stretch parallel to yy axis by factor aa. Reflection in xx axis if a<0a < 0.
f(x)+af(x) + aTranslation by (0a)\binom{0}{a}.
f(x+a)f(x + a)Translation by (a0)\binom{-a}{0}.
f(ax)f(ax)Horizontal squash parallel to xx axis by factor aa. Reflection in yy axis if a<0a < 0.

Combining Transformations and Order

When combining transformations, the order in which you apply them matters significantly. Consider transforming y=cosxy = \cos x into y=cos(2x+π6)y = \cos(2x + \frac{\pi}{6}). There are two ways to achieve this correctly:

  1. Translate then Squash: Translate by (π/60)\binom{-\pi/6}{0} to get cos(x+π6)\cos(x + \frac{\pi}{6}), then squash horizontally by factor 2 to get cos(2x+π6)\cos(2x + \frac{\pi}{6}).
  2. Squash then Translate: Squash horizontally by factor 2 to get cos2x\cos 2x, then translate by (π/120)\binom{-\pi/12}{0}. This works because replacing xx with (x+π12)(x + \frac{\pi}{12}) in cos2x\cos 2x gives cos2(x+π12)=cos(2x+π6)\cos 2(x + \frac{\pi}{12}) = \cos(2x + \frac{\pi}{6}).

Applying a squash by 2 followed by a translation of π6\frac{\pi}{6} would result in cos2(x+π6)=cos(2x+π3)\cos 2(x + \frac{\pi}{6}) = \cos(2x + \frac{\pi}{3}), which is incorrect.

Composite Functions: f(g(x))f(g(x))

The notation f(g(x))f(g(x)) means that g(x)g(x) is used as the input for function ff. If g(x)=2xg(x) = 2x and f(x)=x2+3x2f(x) = x^2 + 3x - 2, then f(g(x))=(2x)2+3(2x)2=4x2+6x2f(g(x)) = (2x)^2 + 3(2x) - 2 = 4x^2 + 6x - 2. In general, f(g(x))f(g(x)) is not equal to g(f(x))g(f(x)).

Applications to Lines and Quadratics

We can interpret y=mx+cy = mx + c as a sequence of transformations of y=xy = x. One way is to stretch by mm (to get y=mxy = mx) and then translate by cc (to get y=mx+cy = mx + c).

Similarly, y=a(x+b)2+cy = a(x + b)^2 + c is a transformation of y=x2y = x^2. We can apply a vertical stretch by aa, then a horizontal translation by b-b, and finally a vertical translation by cc.

Key takeaways

  • Vertical transformations af(x)af(x) and f(x)+af(x) + a affect the yy coordinates directly and logically.
  • Horizontal transformations f(ax)f(ax) and f(x+a)f(x + a) affect the xx coordinates and are counter-intuitive: f(x+a)f(x + a) moves the graph left for positive aa.
  • Order is critical when combining transformations: always check by substituting the transformation into the function algebraically.
  • The composite function f(g(x))f(g(x)) involves replacing every xx in f(x)f(x) with the entire expression for g(x)g(x).
  • Horizontal squashes f(ax)f(ax) have a scale factor of 1/a1/a relative to the yy axis.
Tips

When faced with a complex transformation like f(ax+b)f(ax + b), factorise the inside to f(a(x+b/a))f(a(x + b/a)). This makes it easier to see that you can squash by aa and then translate by b/a-b/a.

Cautions

The most common error is shifting the graph of f(x+a)f(x + a) to the right instead of the left. Always test a single point (like the vertex of a parabola or a peak of a trig curve) to verify the direction of your shift.

Insight

Thinking of transformations in terms of 'input replacement' helps unify these ideas with composite functions f(g(x))f(g(x)). A transformation is simply a specific case of composition where g(x)g(x) is a linear function.

Frequently asked questions

Why does f(x+a)f(x + a) move the graph to the left if aa is positive?

This happens because a specific yy value that used to occur at xx now occurs when x+ax + a equals that original value. This requires the new xx to be smaller by aa, thus shifting the point to the left.

Does it matter if I apply a vertical stretch before a vertical translation?

Yes. If you stretch f(x)f(x) by aa then add bb, you get af(x)+baf(x) + b. If you add bb then stretch by aa, you get a(f(x)+b)=af(x)+aba(f(x) + b) = af(x) + ab. These are different functions.

How do I handle negative values of aa in y=f(ax)y = f(ax)?

The negative sign causes a reflection in the yy axis, while the magnitude a|a| determine the horizontal squash factor. For example, f(2x)f(-2x) is a squash by factor 2 followed by a reflection in the yy axis.

Ready to test your knowledge?

You've reached the end of this section. Start a practice session to solidify your understanding and master this topic.