# 3.6: Transformation of Functions

\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

Skills to Develop

- Graph functions using vertical and horizontal shifts.
- Graph functions using reflections about the x-axis and the y-axis.
- Determine whether a function is even, odd, or neither from its graph.
- Graph functions using compressions and stretches.
- Combine transformations.

We all know that a flat mirror enables us to see an accurate image of ourselves and whatever is behind us. When we tilt the mirror, the images we see may shift horizontally or vertically. But what happens when we bend a flexible mirror? Like a carnival funhouse mirror, it presents us with a distorted image of ourselves, stretched or compressed horizontally or vertically. In a similar way, we can distort or transform mathematical functions to better adapt them to describing objects or processes in the real world. In this section, we will take a look at several kinds of transformations.

* Figure 1.5.1*:

*(credit: "Misko"/Flickr)*

Often when given a problem, we try to model the scenario using mathematics in the form of words, tables, graphs, and equations. One method we can employ is to adapt the basic graphs of the toolkit functions to build new models for a given scenario. There are systematic ways to alter functions to construct appropriate models for the problems we are trying to solve.

### Identifying Vertical Shifts

One simple kind of transformation involves shifting the entire graph of a function up, down, right, or left. The simplest shift is a vertical shift, moving the graph up or down, because this transformation involves adding a positive or negative constant to the function. In other words, we add the same constant to the output value of the function regardless of the input. For a function \(g(x)=f(x)+k\), the function \(f(x)\) is shifted vertically \(k\) units. See **Figure 1.5.1** for an example.

**Figure 1.5.1: **Vertical shift by \(k=1\) of the cube root function \(f(x)=3\sqrt[3]{x}\)

To help you visualize the concept of a vertical shift, consider that \(y=f(x)\). Therefore, \(f(x)+k\) is equivalent to \(y+k\). Every unit of \(y\) is replaced by \(y+k\), so the \(y\)-value increases or decreases depending on the value of \(k\). The result is a shift upward or downward.

Note: Vertical Shift

Given a function \(f(x)\), a new function \(g(x)=f(x)+k\), where \(k\) is a constant, is a **vertical shift** of the function \(f(x)\). All the output values change by \(k\) units. If \(k\) is positive, the graph will shift up. If \(k\) is negative, the graph will shift down.

Example 1.5.1: Adding a Constant to a Function

To regulate temperature in a green building, airflow vents near the roof open and close throughout the day. **Figure 1.5.2** shows the area of open vents \(V\) (in square feet) throughout the day in hours after midnight, \(t\). During the summer, the facilities manager decides to try to better regulate temperature by increasing the amount of open vents by 20 square feet throughout the day and night. Sketch a graph of this new function.

*Figure 1.5.2*

**Solution**

We can sketch a graph of this new function by adding 20 to each of the output values of the original function. This will have the effect of shifting the graph vertically up, as shown in **Figure 1.5.3**.

*Figure 1.5.3*

Notice that in **Figure 1.5.3**, for each input value, the output value has increased by 20, so if we call the new function \(S(t)\),we could write

\[S(t)=V(t)+20\]

This notation tells us that, for any value of \(t\),\(S(t)\) can be found by evaluating the function \(V\) at the same input and then adding 20 to the result. This defines \(S\) as a transformation of the function \(V\), in this case a vertical shift up 20 units. Notice that, with a vertical shift, the input values stay the same and only the output values change. See **Table 1.5.1**.

\(t\) |
0 | 8 | 10 | 17 | 19 | 24 |
---|---|---|---|---|---|---|

\(V(t)\) |
0 | 0 | 220 | 220 | 0 | 0 |

\(S(t)\) |
20 | 20 | 240 | 240 | 20 | 20 |

**Table 1.5.1**

**Given a tabular function, create a new row to represent a vertical shift.**

- Identify the output row or column.
- Determine the
**magnitude**of the shift. - Add the shift to the value in each output cell. Add a positive value for up or a negative value for down.

Example 1.5.2: Shifting a Tabular Function Vertically

A function \(f(x)\) is given in **Table 1.5.2**. Create a table for the function \(g(x)=f(x)−3\).

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(x)\) |
1 | 3 | 7 | 11 |

*Table 1.5.2*

**Solution**

The formula \(g(x)=f(x)−3\) tells us that we can find the output values of \(g\) by subtracting 3 from the output values of \(f\). For example:

\(\begin{align} f(x)&=1 &\text{Given} \\ g(x)&=f(x)-3 &\text{Given Transformation} \\ g(2) & =f(2)−3 \\ &=1-3\\ &=2\end{align}\)

Subtracting 3 from each \(f(x)\) value, we can complete a table of values for \(g(x)\) as shown in **Table 1.5.3**.

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(x)\) |
1 | 3 | 7 | 11 |

\(g(x)\) |
-2 | 0 | 4 | 8 |

**Table 1.5.3**

**Analysis**

As with the earlier vertical shift, notice the input values stay the same and only the output values change.

**1.5.1: **The function \(h(t)=−4.9t^2+30t\) gives the height \(h\) of a ball (in meters) thrown upward from the ground after \(t\) seconds. Suppose the ball was instead thrown from the top of a 10-m building. Relate this new height function \(b(t)\) to \(h(t)\), and then find a formula for \(b(t)\).

\(b(t)=h(t)+10=−4.9t^2+30t+10\)

### Identifying Horizontal Shifts

We just saw that the vertical shift is a change to the output, or outside, of the function. We will now look at how changes to input, on the inside of the function, change its graph and meaning. A shift to the input results in a movement of the graph of the function left or right in what is known as a **horizontal shift**, shown in **Figure 1.5.4**.

**Figure 1.5.4: **Horizontal shift of the function \(f(x)=\sqrt[3]{x}\). Note that \(h=+1\) shifts the graph to the left, that is,

towards negative values of \(x\).

For example, if \(f(x)=x^2\), then \(g(x)=(x−2)^2\) is a new function. Each input is reduced by 2 prior to squaring the function. The result is that the graph is shifted 2 units to the right, because we would need to increase the prior input by 2 units to yield the same output value as given in \(f\).

Note: Horizontal Shift

Given a function \(f\), a new function \(g(x)=f(x−h)\), where \(h\) is a constant, is a **horizontal shift** of the function \(f\). If \(h\) is positive, the graph will shift right. If \(h\) is negative, the graph will shift left.

Example 1.5.4: Adding a Constant to an Input

Returning to our building airflow example from **Figure 1.5.2**, suppose that in autumn the facilities manager decides that the original venting plan starts too late, and wants to begin the entire venting program 2 hours earlier. Sketch a graph of the new function.

**Solution**

We can set \(V(t)\) to be the original program and \(F(t)\) to be the revised program.

\[V(t)= \text{ the original venting plan}\]

\[F(t)= \text{ starting 2 hrs sooner}\]

In the new graph, at each time, the airflow is the same as the original function \(V\) was 2 hours later. For example, in the original function \(V\), the airflow starts to change at 8 a.m., whereas for the function \(F\), the airflow starts to change at 6 a.m. The comparable function values are \(V(8)=F(6)\). See **Figure 1.5.5**. Notice also that the vents first opened to \(220 \text{ft}^2\) at 10 a.m. under the original plan, while under the new plan the vents reach \(220 \text{ft}^2\) at 8 a.m., so \(V(10)=F(8)\).

In both cases, we see that, because \(F(t)\) starts 2 hours sooner, \(h=−2\). That means that the same output values are reached when \(F(t)=V(t−(−2))=V(t+2)\).

**Figure 1.5.5**

**Analysis**

Note that \(V(t+2)\) has the effect of shifting the graph to the left.

Horizontal changes or “inside changes” affect the domain of a function (the input) instead of the range and often seem counterintuitive. The new function \(F(t)\) uses the same outputs as \(V(t)\), but matches those outputs to inputs 2 hours earlier than those of \(V(t)\). Said another way, we must add 2 hours to the input of \(V\) to find the corresponding output for \(F:F(t)=V(t+2)\).

**Given a tabular function, create a new row to represent a horizontal shift.**

- Identify the input row or column.
- Determine the magnitude of the shift.
- Add the shift to the value in each input cell.

Example 1.5.5: Shifting a Tabular Function Horizontally

A function \(f(x)\) is given in **Table 1.5.4**. Create a table for the function \(g(x)=f(x−3)\).

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(x)\) |
1 | 3 | 7 | 11 |

*Table 1.5.4*

**Solution**

The formula \(g(x)=f(x−3)\) tells us that the output values of \(g\) are the same as the output value of \(f\) when the input value is 3 less than the original value. For example, we know that \(f(2)=1\). To get the same output from the function \(g\), we will need an input value that is 3 larger. We input a value that is 3 larger for \(g(x)\) because the function takes 3 away before evaluating the function \(f\).

\(\begin{align} g(5)&=f(5-3) \\ &=f(2) \\ &=1 \end{align}\)

We continue with the other values to create **Table 1.5.5**.

\(x\) |
5 | 7 | 9 | 11 |
---|---|---|---|---|

\(x-3\) |
2 | 4 | 6 | 8 |

\(f(x)\) |
1 | 3 | 7 | 11 |

\(g(x)\) |
1 | 3 | 7 | 11 |

The result is that the function \(g(x)\) has been shifted to the right by 3. Notice the output values for \(g(x)\) remain the same as the output values for \(f(x)\), but the corresponding input values, \(x\), have shifted to the right by 3. Specifically, 2 shifted to 5, 4 shifted to 7, 6 shifted to 9, and 8 shifted to 11.

**Analysis**

**Figure 1.5.6 **represents both of hte functions. We can see the horizontal shift in each point.

** Figure 1.5.6: **Graph of the points from the previous table for \(f(x)\) and \(g(x)=f(x-3)\)

Example 1.5.6: Identifying a Horizontal Shift of a Toolkit Function

**Figure 1.5.7** represents a transformation of the toolkit function \(f(x)=x^2\). Relate this new function \(g(x)\) to \(f(x)\), and then find a formula for \(g(x)\).

**Figure 1.5.7: **Graph of a parabola

**Solution**

Notice that the graph is identical in shape to the \(f(x)=x^2\) function, but the \(x\)-values are shifted to the right 2 units. The vertex used to be at \((0,0)\), but now the vertex is at \((2,0)\). The graph is the basic quadratic function shifted 2 units to the right, so

\[g(x)=f(x−2)\]

Notice how we must input the value \(x=2\) to get the output value \(y=0\); the \(x\)-values must be 2 units larger because of the shift to the right by 2 units. We can then use the definition of the \(f(x)\) function to write a formula for \(g(x)\) by evaluating \(f(x−2)\).

\[\begin{align} f(x)&=x^2 \\ g(x)&=f(x-2) \\ g(x)&=f(x-2)=(x-2)^2 \end{align}\]

**Analysis**

To determine whether the shift is \(+2\) or \(−2\), consider a single reference point on the graph. For a quadratic, looking at the vertex point is convenient. In the original function, \(f(0)=0\). In our shifted function, \(g(2)=0\). To obtain the output value of 0 from the function \(f\), we need to decide whether a plus or a minus sign will work to satisfy \(g(2)=f(x−2)=f(0)=0\). For this to work, we will need to subtract 2 units from our input values.

Example 1.5.7: Interpreting Horizontal versus Vertical Shifts

The function \(G(m)\) gives the number of gallons of gas required to drive \(m\) miles. Interpret \(G(m)+10\) and \(G(m+10)\)

**Solution**

\(G(m)+10\) can be interpreted as adding 10 to the output, gallons. This is the gas required to drive \(m\) miles, plus another 10 gallons of gas. The graph would indicate a vertical shift.

\(G(m+10)\) can be interpreted as adding 10 to the input, miles. So this is the number of gallons of gas required to drive 10 miles more than \(m\) miles. The graph would indicate a horizontal shift.

**1.5.1:** Given the function \(f(x)=\sqrt{x}\), graph the original function \(f(x)\) and the transformation \(g(x)=f(x+2)\) on the same axes. Is this a horizontal or a vertical shift? Which way is the graph shifted and by how many units?

**Solution**

The graphs of \(f(x)\) and \(g(x)\) are shown below. The transformation is a horizontal shift. The function is shifted to the left by 2 units.

### Combining Vertical and Horizontal Shifts

Now that we have two transformations, we can combine them together. Vertical shifts are outside changes that affect the output \((y-)\) axis values and shift the function up or down. Horizontal shifts are inside changes that affect the input \((x-)\) axis values and shift the function left or right. Combining the two types of shifts will cause the graph of a function to shift up or down and right or left.

**Given a function and both a vertical and a horizontal shift, sketch the graph.**

- Identify the vertical and horizontal shifts from the formula.
- The vertical shift results from a constant added to the output. Move the graph up for a positive constant and down for a negative constant.
- The horizontal shift results from a constant added to the input. Move the graph left for a positive constant and right for a negative constant.
- Apply the shifts to the graph in either order.

Example 1.5.8: Graphing Combined Vertical and Horizontal Shifts

Given \(f(x)=|x|\), sketch a graph of \(h(x)=f(x+1)−3\).

**Solution**

The function \(f\) is our toolkit absolute value function. We know that this graph has a V shape, with the point at the origin. The graph of \(h\) has transformed \(f\) in two ways: \(f(x+1)\) is a change on the inside of the function, giving a horizontal shift left by 1, and the subtraction by 3 in \(f(x+1)−3\) is a change to the outside of the function, giving a vertical shift down by 3. The transformation of the graph is illustrated in **Figure 1.5.8**.

Let us follow one point of the graph of \(f(x)=|x|\).

The point \((0,0)\) is transformed first by shifting left 1 unit:\((0,0)\rightarrow(−1,0)\)

The point \((−1,0)\) is transformed next by shifting down 3 units:\((−1,0)\rightarrow(−1,−3)\)

**Figure 1.5.8: **Graph of an absolute function, \(y=|x|\), and how it was transformed to \(y=|x+1|-3\)

**Figure 1.5.9** shows the graph of \(h\).

**Figure 1.5.9: **The final function \(y=|x+1|-3\).

**1.5.2:** Given \(f(x)=|x|\), sketch a graph of \(h(x)=f(x−2)+4\).

**Solution**

Example 1.5.9: Identifying Combined Vertical and Horizontal Shifts

Write a formula for the graph shown in **Figure 1.5.10**, which is a transformation of the toolkit square root function.

**Figure 1.5.10: **Graph of a square root function transposed right one unit and up 2.

**Solution**

The graph of the toolkit function starts at the origin, so this graph has been shifted 1 to the right and up 2. In function notation, we could write that as

\[h(x)=f(x−1)+2\]

Using the formula for the square root function, we can write

\[h(x)=\sqrt{x−1}+2\]

**Analysis**

Note that this transformation has changed the domain and range of the function. This new graph has domain \(\left[1,\infty\right)\) and range \(\left[2,\infty\right)\).

**1.5.2:** Write a formula for a transformation of the toolkit reciprocal function \(f(x)=\frac{1}{x}\) that shifts the function’s graph one unit to the right and one unit up.

**Solution**

\(g(x)=\dfrac{1}{x-1}+1\)

### Graphing Functions Using Reflections about the Axes

Another transformation that can be applied to a function is a reflection over the x- or y-axis. A **vertical reflection** reflects a graph vertically across the x-axis, while a **horizontal reflection** reflects a graph horizontally across the y-axis. The reflections are shown in **Figure 1.5.11.**

.

**Figure 1.5.11: **Graph of the vertical and horizontal reflection of a function.

Notice that the vertical reflection produces a new graph that is a mirror image of the base or original graph about the x-axis. The horizontal reflection produces a new graph that is a mirror image of the base or original graph about the y-axis.

Reflections

Given a function \(f(x)\), a new function \(g(x)=−f(x)\) is a **vertical reflection** of the function \(f(x)\), sometimes called a reflection about (or over, or through) the x-axis.

Given a function \(f(x)\), a new function \(g(x)=f(−x)\) is a **horizontal reflection** of the function \(f(x)\), sometimes called a reflection about the y-axis.

**Given a function, reflect the graph both vertically and horizontally.**

- Multiply all outputs by –1 for a vertical reflection. The new graph is a reflection of the original graph about the x-axis.
- Multiply all inputs by –1 for a horizontal reflection. The new graph is a reflection of the original graph about the y-axis.

Example 1.5.10: Reflecting a Graph Horizontally and Vertically

Reflect the graph of \(s(t)=\sqrt{t}\) (a) vertically and (b) horizontally.

**Solution**

a. Reflecting the graph vertically means that each output value will be reflected over the horizontal t-axis as shown in **Figure 1.5.12**.

**Figure 1.5.12: **Graph of the vertical reflection of the square root function.

Because each output value is the opposite of the original output value, we can write

\[V(t)=−s(t) \text{ or } V(t)=−\sqrt{t}\]

Notice that this is an outside change, or vertical shift, that affects the output \(s(t)\) values, so the negative sign belongs outside of the function.

b. Reflecting horizontally means that each input value will be reflected over the vertical axis as shown in **Figure 1.5.13**.

**Figure 1.5.13: **Horizontal reflection of the square root function

Because each input value is the opposite of the original input value, we can write

\[H(t)=s(−t) \text{ or } H(t)=\sqrt{−t}\]

Notice that this is an inside change or horizontal change that affects the input values, so the negative sign is on the inside of the function.

Note that these transformations can affect the domain and range of the functions. While the original square root function has domain \(\left[0,\infty\right)\) and range \(\left[0,\infty\right)\), the vertical reflection gives the \(V(t)\) function the range \(\left(−\infty,0\right]\) and the horizontal reflection gives the \(H(t)\) function the domain \(\left(−\infty, 0\right]\).

**1.5.3: **Reflect the graph of \(f(x)=|x−1|\) (a) vertically and (b) horizontally.

**Solution**

a.

Graph of a vertically reflected absolute function.

b.

Graph of an absolute function translated one unit left.

Example 1.5.11: Reflecting a Tabular Function Horizontally and Vertically

A function \(f(x)\) is given as **Table 1.5.6**. Create a table for the functions below.

a. \(g(x)=−f(x)\)

b. \(h(x)=f(−x)\)

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(x)\) |
1 | 3 | 7 | 11 |

**Table 1.5.6**

a. For \(g(x)\), the negative sign outside the function indicates a vertical reflection, so the x-values stay the same and each output value will be the opposite of the original output value. See **Table 1.5.7**.

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(g(x)\) |
-1 | -3 | -7 | -11 |

**Table 1.5.7**

b. For \(h(x)\), the negative sign inside the function indicates a horizontal reflection, so each input value will be the opposite of the original input value and the \(h(x)\) values stay the same as the \(f(x)\) values. See **Table 1.5.8**.

\(x\) |
-2 | -4 | -6 | -8 |
---|---|---|---|---|

\(g(x)\) |
1 | 3 | 7 | 11 |

**Table 1.5.8**

**1.5.4: **A function \(f(x)\) is given as **Table 1.5.9**. Create a table for the functions below.

a. \(g(x)=−f(x)\)

b. \(h(x)=f(−x)\)

\(x\) |
-2 | 0 | 2 | 4 |
---|---|---|---|---|

\(f(x)\) |
5 | 10 | 15 | 20 |

**Table 1.5.9**

**Solution**

**a.** \(g(x)=−f(x)\)

\(x\) |
-2 | 0 | 2 | 4 |
---|---|---|---|---|

\(fgx)\) |
-5 | -10 | -15 | -20 |

**b.** \(h(x)=f(−x)\)

\(x\) |
-2 | 0 | 2 | 4 |
---|---|---|---|---|

\(f(x)\) |
15 | 10 | 5 | unknown |

Example 1.5.12: Applying a Learning Model Equation

A common model for learning has an equation similar to \(k(t)=−2^{−t}+1\), where \(k\) is the percentage of mastery that can be achieved after \(t\) practice sessions. This is a transformation of the function \(f(t)=2^t\) shown in** Figure 1.5.14**. Sketch a graph of \(k(t)\).

**Figure 1.5.14: **Graph of \(k(t)\)

**Solution**

This equation combines three transformations into one equation.

- A horizontal reflection: \(f(−t)=2^{−t}\)
- A vertical reflection: \(−f(−t)=−2^{−t}\)
- A vertical shift: \(−f(−t)+1=−2^{−t}+1\)

We can sketch a graph by applying these transformations one at a time to the original function. Let us follow two points through each of the three transformations. We will choose the points \((0, 1)\) and \((1, 2)\).

- First, we apply a horizontal reflection: \((0, 1) \; (–1, 2)\).
- Then, we apply a vertical reflection: \((0, −1) \; (1, –2)\).
- Finally, we apply a vertical shift: \((0, 0) \; (1, 1)\).

This means that the original points, \((0,1)\) and \((1,2)\) become \((0,0)\) and \((1,1)\) after we apply the transformations.

In **Figure 1.5.15**, the first graph results from a horizontal reflection. The second results from a vertical reflection. The third results from a vertical shift up 1 unit.

**Figure 1.5.15: **Graphs of all the transformations.

**Analysis**

As a model for learning, this function would be limited to a domain of \(t\geq0\), with corresponding range \(\left[0,1\right)\).

**1.5.5: **Given the toolkit function \(f(x)=x^2\), graph \(g(x)=−f(x)\) and \(h(x)=f(−x)\). Take note of any surprising behavior for these functions.

**Solution**

*Graph of \(x^2\) and its reflections.*

Notice: \(g(x)=f(−x)\) looks the same as \(f(x)\).

### Determining Even and Odd Functions

Some functions exhibit symmetry so that reflections result in the original graph. For example, horizontally reflecting the toolkit functions \(f(x)=x^2\) or \(f(x)=|x|\) will result in the original graph. We say that these types of graphs are symmetric about the y-axis. Functions whose graphs are symmetric about the y-axis are called **even functions**.

If the graphs of \(f(x)=x^3\) or \(f(x)=\frac{1}{x}\) were reflected over both axes, the result would be the original graph, as shown in **Figure 1.5.16**.

**Figure 1.5.16**: (a) The cubic toolkit function (b) Horizontal reflection of the cubic toolkit function (c) Horizontal and vertical reflections reproduce the original cubic function.

We say that these graphs are symmetric about the origin. A function with a graph that is symmetric about the origin is called an **odd function**.

Note: A function can be neither even nor odd if it does not exhibit either symmetry. For example, \(f(x)=2^x\) is neither even nor odd. Also, the only function that is both even and odd is the constant function \(f(x)=0\).

Even and Odd Functions

A function is called an **even function** if for every input \(x\)

\(f(x)=f(−x)\)

The graph of an even function is symmetric about the y-axis.

A function is called an **odd function** if for every input \(x\)

\(f(x)=−f(−x)\)

The graph of an odd function is symmetric about the origin.

**Given the formula for a function, determine if the function is even, odd, or neither.**

- Determine whether the function satisfies \(f(x)=f(−x)\). If it does, it is even.
- Determine whether the function satisfies \(f(x)=−f(−x)\). If it does, it is odd.
- If the function does not satisfy either rule, it is neither even nor odd.

Example 1.5.13: Determining whether a Function Is Even, Odd, or Neither

Is the function \(f(x)=x^3+2x\) even, odd, or neither?

**Solution**

Without looking at a graph, we can determine whether the function is even or odd by finding formulas for the reflections and determining if they return us to the original function. Let’s begin with the rule for even functions.

\[f(−x)=(−x)^3+2(−x)=−x^3−2x\]

This does not return us to the original function, so this function is not even. We can now test the rule for odd functions.

\[−f(−x)=−(−x^3−2x)=x^3+2x\]

Because \(−f(−x)=f(x)\), this is an odd function.

**Analysis**

Consider the graph of \(f\) in **Figure 1.5.17**. Notice that the graph is symmetric about the origin. For every point \((x,y)\) on the graph, the corresponding point \((−x,−y)\) is also on the graph. For example, \((1, 3)\) is on the graph of \(f\), and the corresponding point \((−1,−3)\) is also on the graph.

**Figure 1.5.17**: Graph of \(f(x)\) with labeled points at \((1, 3)\) and \((-1, -3)\).

**1.5.6: **Is the function \(f(s)=s^4+3s^2+7\) even, odd, or neither?

**Solution**

even

### Graphing Functions Using Stretches and Compressions

Adding a constant to the inputs or outputs of a function changed the position of a graph with respect to the axes, but it did not affect the shape of a graph. We now explore the effects of multiplying the inputs or outputs by some quantity.

We can transform the inside (input values) of a function or we can transform the outside (output values) of a function. Each change has a specific effect that can be seen graphically.

#### Vertical Stretches and Compressions

When we multiply a function by a positive constant, we get a function whose graph is stretched or compressed vertically in relation to the graph of the original function. If the constant is greater than 1, we get a **vertical stretch**; if the constant is between 0 and 1, we get a **vertical compression**. **Figure 1.5.17** shows a function multiplied by constant factors 2 and 0.5 and the resulting vertical stretch and compression.

**Figure 1.5.17: **Graph of a function that shows vertical stretching and compression.

Vertical stretch and compression

Vertical Stretches and Compressions

Given a function \(f(x)\), a new function \(g(x)=af(x)\), where \(a\) is a constant, is a **vertical stretch** or **vertical compression** of the function \(f(x)\).

- If \(a>1\), then the graph will be stretched.
- If \(0<a<1\), then the graph will be compressed.
- If \(a<0\), then there will be combination of a vertical stretch or compression with a vertical reflection.

**Given a function, graph its vertical stretch.**

- Identify the value of \(a\).
- Multiply all range values by \(a\)

a. If \(a>1\), the graph is stretched by a factor of \(a\).

b. If \(0<a<1\), the graph is compressed by a factor of \(a\).

c. If \(a<0\), the graph is either stretched or compressed and also reflected about the x-axis.

Example 1.5.14: Graphing a Vertical Stretch

A function \(P(t)\) models the population of fruit flies. The graph is shown in **Figure 1.5.18**.

**Figure 1.5.18**: Graph to represent the growth of the population of fruit flies.

A scientist is comparing this population to another population, \(Q\), whose growth follows the same pattern, but is twice as large. Sketch a graph of this population.

**Solution**

Because the population is always twice as large, the new population’s output values are always twice the original function’s output values. Graphically, this is shown in **Figure 1.5.19**.

If we choose four reference points, \((0, 1)\), \((3, 3)\), \((6, 2)\) and \((7, 0)\) we will multiply all of the outputs by 2.

The following shows where the new points for the new graph will be located.

\[(0, 1)\rightarrow(0, 2)\]

\[(3, 3)\rightarrow(3, 6)\]

\[(6, 2)\rightarrow(6, 4)\]

\[(7, 0)\rightarrow(7, 0)\]

**Figure 1.5.19: **Graph of the population function doubled.

Symbolically, the relationship is written as

\[Q(t)=2P(t)\]

This means that for any input \(t\), the value of the function \(Q\) is twice the value of the function \(P\). Notice that the effect on the graph is a vertical stretching of the graph, where every point doubles its distance from the horizontal axis. The input values, \(t\), stay the same while the output values are twice as large as before.

**Given a tabular function and assuming that the transformation is a vertical stretch or compression, create a table for a vertical compression.**

1. Determine the value of \(a\).

2. Multiply all of the output values by \(a\).

Example 1.5.15: Finding a Vertical Compression of a Tabular Function

A function \(f\) is given as **Table 1.5.10**. Create a table for the function \(g(x)=\frac{1}{2}f(x)\).

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(x)\) |
1 | 3 | 7 | 11 |

**Table 1.5.10**

**Solution**

The formula \(g(x)=\frac{1}{2}f(x)\) tells us that the output values of \(g\) are half of the output values of \(f\) with the same inputs. For example, we know that \(f(4)=3\). Then

\[g(4)=\frac{1}{2}f(4)=\frac{1}{2}(3)=\frac{3}{2}\]

We do the same for the other values to produce **Table 1.5.11**.

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(g(x)\) |
\(\dfrac{1}{2}\) | \(\dfrac{3}{2}\) | \(\dfrac{7}{2}\) | \(\dfrac{11}{2}\) |

**Table 1.5.10**

**Analysis**

The result is that the function \(g(x)\) has been compressed vertically by \(\frac{1}{2}\). Each output value is divided in half, so the graph is half the original height.

**1.5.7: **A function \(f\) is given as **Table 1.5.12**. Create a table for the function \(g(x)=\frac{3}{4}f(x)\).

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(x)\) |
12 | 16 | 20 | 0 |

**Table 1.5.12**

**Solution**

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(g(x)\) |
9 | 12 | 15 | 0 |

Example 1.5.16: Recognizing a Vertical Stretch

The graph in **Figure 1.5.20** is a transformation of the toolkit function \(f(x)=x^3\). Relate this new function \(g(x)\) to \(f(x)\), and then find a formula for \(g(x)\).

**Figure 1.5.20:** Graph of a transformation of \(f(x)=x^3\)

When trying to determine a vertical stretch or shift, it is helpful to look for a point on the graph that is relatively clear. In this graph, it appears that \(g(2)=2\). With the basic cubic function at the same input, \(f(2)=2^3=8\). Based on that, it appears that the outputs of \(g\) are \(\frac{1}{4}\) the outputs of the function \(f\) because \(g(2)=\frac{1}{4}f(2)\). From this we can fairly safely conclude that \(g(x)=\frac{1}{4}f(x)\).

We can write a formula for \(g\) by using the definition of the function \(f\).

\[g(x)=\frac{1}{4} f(x)=\frac{1}{4}x^3.\]

**1.5.8: **Write the formula for the function that we get when we stretch the identity toolkit function by a factor of 3, and then shift it down by 2 units.

**Solution**

\(g(x)=3x-2\)

#### Horizontal Stretches and Compressions

Now we consider changes to the inside of a function. When we multiply a function’s input by a positive constant, we get a function whose graph is stretched or compressed horizontally in relation to the graph of the original function. If the constant is between 0 and 1, we get a** horizontal stretch**; if the constant is greater than 1, we get a **horizontal compression** of the function.

**Figure 1.5.21: **Graph of the vertical stretch and compression of \(x^2\).

Given a function \(y=f(x)\), the form \(y=f(bx)\) results in a horizontal stretch or compression. Consider the function \(y=x^2\). Observe **Figure 1.5.21**. The graph of \(y=(0.5x)^2\) is a horizontal stretch of the graph of the function \(y=x^2\) by a factor of 2. The graph of \(y=(2x)^2\) is a horizontal compression of the graph of the function \(y=x^2\) by a factor of 2.

Horizontal Stretches and Compressions

Given a function \(f(x)\), a new function \(g(x)=f(bx)\), where \(b\) is a constant, is a **horizontal stretch** or **horizontal compression **of the function \(f(x)\).

- If \(b>1\), then the graph will be compressed by \(\frac{1}{b}\).
- If \(0<b<1\), then the graph will be stretched by \(\frac{1}{b}\).
- If \(b<0\), then there will be combination of a horizontal stretch or compression with a horizontal reflection.

**Given a description of a function, sketch a horizontal compression or stretch.**

- Write a formula to represent the function.
- Set \(g(x)=f(bx)\) where \(b>1\) for a compression or \(0<b<1\) for a stretch.

Example 1.5.17: Graphing a Horizontal Compression

Suppose a scientist is comparing a population of fruit flies to a population that progresses through its lifespan twice as fast as the original population. In other words, this new population, \(R\), will progress in 1 hour the same amount as the original population does in 2 hours, and in 2 hours, it will progress as much as the original population does in 4 hours. Sketch a graph of this population.

**Solution**

Symbolically, we could write

\(\begin{align} R(1)&=P(2), \\ R(2)&=P(4), &\text{and in general,} \\ R(t)&=R(2t).\end{align}\)

See **Figure 1.5.22** for a graphical comparison of the original population and the compressed population.

**Figure 1.5.22: **(a) Original population graph (b) Compressed population graph

**Analysis**

Note that the effect on the graph is a horizontal compression where all input values are half of their original distance from the vertical axis.

Example 1.5.18: Finding a Horizontal Stretch for a Tabular Function

A function \(f(x)\) is given as **Table 1.5.13**. Create a table for the function \(g(x)=f(\frac{1}{2}x)\).

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(x)\) |
1 | 3 | 7 | 11 |

**Table 1.5.13**

The formula \(g(x)=f(\frac{1}{2}x)\) tells us that the output values for \(g\) are the same as the output values for the function \(f\) at an input half the size. Notice that we do not have enough information to determine \(g(2)\) because \(g(2)=f(\frac{1}{2}⋅2)=f(1)\), and we do not have a value for \(f(1)\) in our table. Our input values to \(g\) will need to be twice as large to get inputs for \(f\) that we can evaluate. For example, we can determine \(g(4)\).

\[g(4)=f(\dfrac{1}{2}⋅4)=f(2)=1\]

We do the same for the other values to produce **Table 1.5.14**.

\(x\) |
4 | 8 | 12 | 16 |
---|---|---|---|---|

\(g(x)\) |
1 | 3 | 7 | 11 |

**Table 1.5.14**

**Figure 1.5.23** shows the graphs of both of these sets of points.

**Figure 1.5.23: **Graph of the previous table.

**Analysis**

Because each input value has been doubled, the result is that the function \(g(x)\) has been stretched horizontally by a factor of 2.

Example 1.5.19: Recognizing a Horizontal Compression on a Graph

Relate the function \(g(x)\) to \(f(x)\) in **Figure 1.5.25**.

**Figure 1.5.25: **Graph of \(f(x)\) being vertically compressed to \(g(x)\).

**Solution**

The graph of \(g(x)\) looks like the graph of \(f(x)\) horizontally compressed. Because \(f(x)\) ends at (6,4) and \(g(x)\) ends at (2,4), we can see that the x-values have been compressed by \(\frac{1}{3}\), because \(6(\frac{1}{3})=2\). We might also notice that \(g(2)=f(6)\) and \(g(1)=f(3)\). Either way, we can describe this relationship as \(g(x)=f(3x)\). This is a horizontal compression by \(\frac{1}{3}\).

**Analysis**

Notice that the coefficient needed for a horizontal stretch or compression is the reciprocal of the stretch or compression. So to stretch the graph horizontally by a scale factor of 4, we need a coefficient of \(\frac{1}{4}\) in our function: \(f(\frac{1}{4}x)\). This means that the input values must be four times larger to produce the same result, requiring the input to be larger, causing the horizontal stretching.

**1.5.9: **Write a formula for the toolkit square root function horizontally stretched by a factor of 3.

**Solution**

\(g(x)=f(\frac{1}{3}x)\), so using the square root function we get \(g(x)=\sqrt{\frac{1}{3}x}\)

### Performing a Sequence of Transformations

When combining transformations, it is very important to consider the order of the transformations. For example, vertically shifting by 3 and then vertically stretching by 2 does not create the same graph as vertically stretching by 2 and then vertically shifting by 3, because when we shift first, both the original function and the shift get stretched, while only the original function gets stretched when we stretch first.

When we see an expression such as \(2f(x)+3\), which transformation should we start with? The answer here follows nicely from the order of operations. Given the output value of \(f(x)\), we first multiply by 2, causing the vertical stretch, and then add 3, causing the vertical shift. In other words, multiplication before addition.

Horizontal transformations are a little trickier to think about. When we write \(g(x)=f(2x+3)\), for example, we have to think about how the inputs to the function \(g\) relate to the inputs to the function \(f\). Suppose we know \(f(7)=12\). What input to \(g\) would produce that output? In other words, what value of \(x\) will allow \(g(x)=f(2x+3)=12?\) We would need \(2x+3=7\). To solve for \(x\), we would first subtract 3, resulting in a horizontal shift, and then divide by 2, causing a horizontal compression.

This format ends up being very difficult to work with, because it is usually much easier to horizontally stretch a graph before shifting. We can work around this by factoring inside the function.

\[f(bx+p)=f(b(x+\frac{p}{b}))\]

Let’s work through an example.

\[f(x)=(2x+4)^2\]

We can factor out a 2.

\[f(x)=(2(x+2))^2\]

Now we can more clearly observe a horizontal shift to the left 2 units and a horizontal compression. Factoring in this way allows us to horizontally stretch first and then shift horizontally.

Note: Combining Transformations

When combining vertical transformations written in the form \(af(x)+k\), first vertically stretch by \(a\) and then vertically shift by \(k\).

When combining horizontal transformations written in the form \(f(bx+h)\), first horizontally shift by \(h\) and then horizontally stretch by \(\frac{1}{b}\).

When combining horizontal transformations written in the form \(f(b(x+h))\), first horizontally stretch by \(\frac{1}{b}\) and then horizontally shift by \(h\).

Horizontal and vertical transformations are independent. It does not matter whether horizontal or vertical transformations are performed first.

Example 1.5.20: Finding a Triple Transformation of a Tabular Function

Given **Table 1.5.15** for the function \(f(x)\), create a table of values for the function \(g(x)=2f(3x)+1\).

\(x\) |
6 | 12 | 18 | 24 |
---|---|---|---|---|

\(f(x)\) |
10 | 14 | 15 | 17 |

**Table 1.5.15**

**Solution**

There are three steps to this transformation, and we will work from the inside out. Starting with the horizontal transformations, \(f(3x)\) is a horizontal compression by \(\frac{1}{3}\), which means we multiply each \(x\)-value by \(\frac{1}{3}\).See **Table 1.5.16**.

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(f(3x)\) |
10 | 14 | 15 | 17 |

**Table 1.5.16**

Looking now to the vertical transformations, we start with the vertical stretch, which will multiply the output values by 2. We apply this to the previous transformation. See **Table 1.5.17**.

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(2f(3x)\) |
20 | 28 | 30 | 34 |

**Table 1.5.17**

Finally, we can apply the vertical shift, which will add 1 to all the output values. See **Table 1.5.18**.

\(x\) |
2 | 4 | 6 | 8 |
---|---|---|---|---|

\(g(x)=2f(3x)+1+1\) |
21 | 29 | 31 | 35 |

**Table 1.5.18**

Example 1.5.21: Finding a Triple Transformation of a Graph

Use the graph of \(f(x)\) in **Figure 1.5.26** to sketch a graph of \(k(x)=f\Big(\frac{1}{2}x+1\Big)−3\).

**Figure 1.5.26: **Graph of a half-circle.

To simplify, let’s start by factoring out the inside of the function.

\[f\Big(\dfrac{1}{2}x+1\Big)−3=f\Big(\dfrac{1}{2}(x+2)\Big)−3\]

By factoring the inside, we can first horizontally stretch by 2, as indicated by the \(\frac{1}{2}\) on the inside of the function. Remember that twice the size of 0 is still 0, so the point \((0,2)\) remains at \((0,2)\) while the point \((2,0)\) will stretch to \((4,0)\). See **Figure 1.5.27**.

**Figure 1.5.27**: Graph of a vertically stretch half-circle.

Next, we horizontally shift left by 2 units, as indicated by \(x+2\). See **Figure 1.5.28**.

**Figure 1.5.28: **Graph of a vertically stretch and translated half-circle.

Last, we vertically shift down by 3 to complete our sketch, as indicated by the −3 on the outside of the function. See **Figure 1.5.29**.

**Figure 1.5.29: **Graph of a vertically stretch and translated half-circle.

### Key Equations

- Vertical shift \(g(x)=f(x)+k\) (up for \(k>0\))
- Horizontal shift \(g(x)=f(x−h)\)(right) for \(h>0\)
- Vertical reflection \(g(x)=−f(x)\)
- Horizontal reflection \(g(x)=f(−x)\)
- Vertical stretch \(g(x)=af(x)\) (a>0 )
- Vertical compression \(g(x)=af(x)\) (0<a<1)
- Horizontal stretch \(g(x)=f(bx)(0<b<1)\)
- Horizontal compression \(g(x)=f(bx)\) (b>1)

### Key Concepts

- A function can be shifted vertically by adding a constant to the output.
- A function can be shifted horizontally by adding a constant to the input.
- Relating the shift to the context of a problem makes it possible to compare and interpret vertical and horizontal shifts.
- Vertical and horizontal shifts are often combined.
- A vertical reflection reflects a graph about the x-axis. A graph can be reflected vertically by multiplying the output by –1.
- A horizontal reflection reflects a graph about the y-axis. A graph can be reflected horizontally by multiplying the input by –1.
- A graph can be reflected both vertically and horizontally. The order in which the reflections are applied does not affect the final graph.
- A function presented in tabular form can also be reflected by multiplying the values in the input and output rows or columns accordingly.
- A function presented as an equation can be reflected by applying transformations one at a time.
- Even functions are symmetric about the y-axis, whereas odd functions are symmetric about the origin.
- Even functions satisfy the condition \(f(x)=f(−x)\).
- Odd functions satisfy the condition \(f(x)=−f(−x)\).
- A function can be odd, even, or neither.
- A function can be compressed or stretched vertically by multiplying the output by a constant.
- A function can be compressed or stretched horizontally by multiplying the input by a constant.
- The order in which different transformations are applied does affect the final function. Both vertical and horizontal transformations must be applied in the order given. However, a vertical transformation may be combined with a horizontal transformation in any order.

### Glossary

**even function**

a function whose graph is unchanged by horizontal reflection, \(f(x)=f(−x)\), and is symmetric about the y-axis

**horizontal compression**

a transformation that compresses a function’s graph horizontally, by multiplying the input by a constant b>1

**horizontal reflection**

a transformation that reflects a function’s graph across the y-axis by multiplying the input by −1

**horizontal shift**

a transformation that shifts a function’s graph left or right by adding a positive or negative constant to the input

**horizontal stretch**

a transformation that stretches a function’s graph horizontally by multiplying the input by a constant 0<b<1

**odd function**

a function whose graph is unchanged by combined horizontal and vertical reflection, \(f(x)=−f(−x)\), and is symmetric about the origin

**vertical compression**

a function transformation that compresses the function’s graph vertically by multiplying the output by a constant 0<a<1

**vertical reflection**

a transformation that reflects a function’s graph across the x-axis by multiplying the output by −1

**vertical shift**

a transformation that shifts a function’s graph up or down by adding a positive or negative constant to the output

**vertical stretch**

a transformation that stretches a function’s graph vertically by multiplying the output by a constant a>1

### Contributors

Jay Abramson (Arizona State University) with contributing authors. Textbook content produced by OpenStax College is licensed under a Creative Commons Attribution License 4.0 license. Download for free at https://openstax.org/details/books/precalculus.