Explaining Horizontal Shifting and Scaling

Here is a setting where the students will have experience, having nothing to do with skills in algebra: daylight savings time (since you're in the USA). When we advance clocks ahead by an hour we lose an hour of sleep. Thus replacing $t$ with $t+1$ shifts your schedule for the day back by one hour.

Here, $t$ is the old "function" and $t + 1$ is the new "function". $t$ is one hour behind $t + 1$, but after this transformation, $t + 1$ shortens the day by one hour. So in the end, we lose an hour. Point out to the students that it also works the other way when we turn the clocks back ($t$ is replaced with $t-1$) and then gain an hour in our schedule.


Enter, the Function Monkey ...

As described in the link, to plot a graph, simply imagine the $x$-axis covered in coconuts, one for every $x$ value, like this:

$$\cdots \quad (-3\;) \quad \color{#9509A5}{(-2\;)} \quad \color{green}{(\;-1\;)} \quad \color{red}{[\;0\;]} \quad \color{ #2B87CD}{(\;1\;)} \color{#D86907}{\quad (\;2\;)} \quad (\;3\;) \quad \cdots$$

with "$\color{red}{[\;\cdot\;]}$" indicating the coconut at the origin. The Function Monkey strolls along the axis, picks up each $x$ coconut, evaluates the corresponding $y$ value (as is his wont), and throws the coconut to the appropriate height (or depth). Graph plotted!

But, wait! No one ever said that the values of the coconuts were required to match the values of the $x$ coordinates which have been coloured for convenience. Hmmmm ...

If the coconut at (the coloured) location $x$ has value $x+1$, then the row of coconuts looks like this: $$\cdots \quad (-2\;) \quad \color{#9509A5}{(\;-1\;)} \quad \color{green}{(\;0\;)} \quad \color{red}{[\;1\;]} \quad \color{ #2B87CD}{(\;2\;)} \color{#D86907}{\quad (\;3\;)} \quad (\;4\;) \quad \cdots$$

Importantly, the coconut locations in colour have not changed. The coconuts still sit on the axis at locations $x = \cdots, -3, \color{#9509A5}{-2},\color{green}{-1}, \color{red}{0},\color{#2B87CD}{1}, \color{#D86907}{2}, 3, \cdots$ still indicating the coconut at the origin.

So far as the Function Monkey is concerned, adding $1$ to each coconut value has effectively shifted the row of coconuts to the left. (Likewise, adding $-1$ to each coconut value effectively shifts the row of coconuts to the right.) Since the Function Monkey throws coconuts vertically, the plotted graph shifts the same way.

In a similar manner, multiplying each (original) coconut value by $2$ yields this row of coconuts:

$$\cdots \quad (-6\;) \quad \color{#9509A5}{(-4\;)} \quad \color{green}{(-2\;)} \quad \color{red}{[\;0\;]} \quad \color{ #2B87CD}{(\;2\;)} \color{#D86907}{\quad (\;4\;)} \quad (\;6\;) \quad \cdots$$

Again, the locations of the coconuts haven't changed, but we see that the span of coconut values from $-6$ to $6$ has been compressed into the space between locations $x=-3$ and $x=3$. The graph will exhibit the same, horizontal, compression.


A plot-less way of thinking about this, which is close to your "head start" interpretation, is that "$f(x+1)$" fools Function Monkey $f$ into thinking that each input value is one unit bigger than it really is. Similarly "$f(2x)$" fools him into thinking that each input is twice its actual size. The effective changes in output values correspond to the Function Monkey's altered perceptions.


You should change variables when changing the coordinate system! x + 1 is confusing because you're re-using the variable. x is already used for representing our "home base" frame of reference.

For instance, pick the symbols s and t, and change to the coordinate system:

let s = x + 1
let t = y + 3

Now this does not mean we are moving up and to the right!

Think: where is the origin of the <s, t> coordinate system in the <x, y> coordinate system? It is at <-1, -3>, because we have to solve by setting <s, t> to <0, 0>; i.e. solve x + 1 = 0 and y + 3 = 0.

The <x, y> system must remain our frame of reference if we are to visualize the motion, and so what we do is rework the equations to isolate x and y:

x = s - 1
y = t - 3

Now you can see that it's a move left and down and this is consistent with the minus signs.

The "backwards" issue arises when you put yourself into the frame of reference of the transformation, but continue using <x, y> to think about that frame. You have to think about the backwards mapping: how do you recover <x, y> from that other frame of reference?

When you see x + 1, you must not imagine that x is moving. (This may be "brain damage" from working in imperative computer programming languages, especially ones like C and BASIC where the = sign is used for assignment: x = x + 1 moves coordinate x to the right.) Rather, x is used as the input to a calculation that produces some other value. And so x is that other value, minus 1.

If I say my money = your money + 1 are you richer than me? No, you're poorer by a dollar! That's easy to see because when the variables have these names, of course you instantly and intuitively put yourself into the your money frame of reference, and easily see that although 1 is being added to your money, the result of that formula expresses my money and not yours! Haha.


When I shift the graph of $f$ one unit to the right I create a new function $g$. To find out the value $g(x)$ I have to look what the value of $f$ was one unit to the left of $x$. therefore $g(x):=f(x-1)$.


Intuitively, the graph of $f(x+1)$ is horizontally shifted to the left because the coordinate system itself is shifted to the right. Likewise, the graph of $f(2x)$ is shrunk horizontally because the coordinate system is stretched by a factor of $2$.