函数图像变换:别背方向,追踪一个点就够了
你大概见过这样的题:已知 y=f(x) 的图像,要求你画出
g(x)=−2f(3(x−1))+4
很多人一看到四个参数就开始背口诀:括号外看上下,括号内看左右,里面的正负还要“反着来”……背到最后,最容易反的偏偏还是方向。
换一种办法。先别管整条曲线,只在原图上抓住一个点
P(u,v),v=f(u).
然后问两句:新图上的哪个横坐标,会让函数括号里重新得到 u?原来的高度 v,在函数外面又被改成了多少?只要这两问答对,平移、伸缩、翻折,甚至几种变换叠在一起,都不会乱。
这一章就围绕这件事展开。你会看到,所谓“图像变换”,说到底就是坐标怎样变。
先把总框架摆在桌面上
最常见的组合形式是
g(x)=af(b(x−h))+k,
其中先约定 b=0。设 P(u,v) 在 y=f(x) 上,也就是 。为了在新函数中重新得到原来的输入 ,新横坐标 必须满足
b(x−h)=u.
解这个一次方程:
x=h+bu.
函数外面的部分直接处理输出。原来的 v=f(u) 会变成
y=av+k.
于是,整章最有用的一条坐标关系出现了:
(u,v)⟶(h+bu,av+

别把四个参数挤在一起记:先解输入得到新横坐标,再处理输出得到新纵坐标。
你可以先记住它的“人话版”:
- 横坐标先除以 b,再加 h;
- 纵坐标先乘 a,再加 k。
这里的“先”说的是坐标计算顺序,不是在要求你机械地按某个顺序画四遍图。真正稳妥的做法始终是:让括号里的输入等于 u,再解出新的 x。
式子在 f 的外面,改的是输出,也就是点的纵坐标;式子在 f 的里面,改的是输入位置,也就是点的横坐标。看到括号内的变化时,不要凭符号猜方向,先列等式。
还有两个特殊情况值得先说清:
- 若 a=0,在原来允许的输入范围内,新函数的输出都等于 k,图像压到水平直线 y=k 上;
- 若 b=0,括号里的输入永远是 0。当 有定义时,新函数只剩常数 ;若 没有定义,新式就没有有效输入。这已经不是把原图完整地伸缩或平移,所以讨论一般图像变换时会要求 。
改输出:图像上下走,高度成倍变
输出变化写在 f(x) 的外面。对同一个 x,原函数先算出 f(x),随后新函数再加工这个结果。所以这一类变化比较直观。
上下平移:g(x)=f(x)+k
原图上的点 (u,v) 满足 v=f(u)。在新图上,同一个横坐标 u 对应
g(u)=f(u)+k=v+k.
因此
(u,v)⟶(u,v+k).
k>0 时,每个点都上移 k 个单位;k<0 时,每个点都下移 ∣k∣ 个单位。横坐标没动,图像的宽窄、左右位置、定义域也不会改变。
拿平方根函数试一下:
f(x)=x,g(x)=
原图从 (0,0) 开始,新图从 (0,−4) 开始。定义域仍是 [0,+∞),因为输入条件 x≥0 没变;值域则从 变为 。
这个例子顺手提醒你:竖直平移通常改值域,不改定义域。
纵向伸缩:g(x)=af(x)
这一次横坐标仍然不动,但高度要乘以 a:
(u,v)⟶(u,av).
别只说“图像变窄”或“变宽”,那种说法在不同母函数上容易混淆。更准确的描述是看点到 x 轴的有向距离:
- a>1:纵坐标的绝对值放大为原来的 a 倍;
- 0<a<1:纵坐标的绝对值缩小为原来的 a 倍;
- a<0:先按 伸缩,再关于 轴翻折;
例如,原函数 f(x)=x2−2 上有点 (0,−2)。若
g(x)=3f(x)−1,
那么这个点的高度先乘 3,再减 1:
−2⟶3×(−2)−1=−7.
所以 (0,−2) 变成 (0,−7)。直接展开也能复核:
g(x)=3(x2−2)−1=3x2−7,
代入 x=0,确实得到 −7。
同在输出方向,顺序可能会留下痕迹
以 f(x)=x2 为例。
先上移 2,再把所有高度放大 3 倍:
3(f(x)+2)=3x2+6.
先放大 3 倍,再上移 2:
3f(x)+2=3x2+2.
两条抛物线的顶点分别是 (0,6) 和 (0,2),显然不是同一条图。这里的坑在于:第一次做法里,上移产生的 2 也被后面的“乘 3”一起放大了。
同一方向上的两个操作不要随意换序。尤其是“先平移再伸缩”和“先伸缩再平移”,常数项往往会被一起放大或压缩。
改输入:别看减号,去问“谁能制造原来的输入”
输入变化写在 f 的括号里面。它最容易让人犯错,因为表达式描述的是函数“收到什么”,而不是点“往哪儿走”。
左右平移:g(x)=f(x−h)
假设原图的特征点出现在输入 u。在新函数里,要让括号内仍等于 u,就得有
x−h=u.
于是
x=u+h,
也就是
(u,v)⟶(u+h,v).
所以 h>0 时向右移 h 个单位,h<0 时向左移 ∣h∣ 个单位。
拿绝对值函数做一次不靠口诀的判断:
g(x)=∣x−5∣.
母函数 ∣x∣ 的顶点来自“内部输入等于 0”。现在令
x−5=0,
得到 x=5,所以顶点从 (0,0) 移到 (5,0)。方向自然就是向右,不需要额外背“内减右移”。
定义域也可以这样追踪。若原函数的定义域是集合 D,那么 f(x−h) 要有意义,就必须让 x−h∈D。因此新定义域是
{u+h∣u∈D}.
例如 f(x)=x 的定义域是 x≥0,而 要求 ,所以定义域变为 。端点也正好移到 。
横向伸缩:g(x)=f(bx)
还是从原图输入 u 出发。新横坐标要满足
bx=u,
所以
x=bu.
点映射是
(u,v)⟶(bu,v).
这就解释了为什么横向倍率看起来会“反着来”:
- ∣b∣>1:横坐标绝对值变小,图像向 y 轴压缩为原来的 ∣b∣1;
- :横坐标绝对值变大,图像横向拉伸为原来的 ;
比如 g(x)=f(3x)。原图上横坐标为 6 的点,会跑到新图的横坐标 2,因为 3×2=6。不是拉伸 倍,而是压缩到原来的 。
括号里有两项,先整理再判断
看到
f(2x−6)
时,直接把 −6 当成“右移 6”会出错。先提出 2:
f(2x−6)=f(2(x−3)).
现在才看得清:横向压缩到原来的 21,再把压缩后的坐标整体右移 3。用点来验算更干脆。若原点横坐标是 u,那么
2(x−3)=u
给出
x=3+2u.
右移量确实是 3,不是 6。
“括号里减就向右、乘几就压几倍”只能当最后的速记,不能当推理。只要括号稍微复杂一点,速记就容易失灵。列出“内部输入 = 原来的 u”,方向和倍数会自己算出来。
翻折:负号在哪一层,镜子就管哪个坐标
函数外面有负号:关于 x 轴翻折
g(x)=−f(x).
原图点 (u,v) 变为
(u,−v).
横坐标不变,纵坐标取相反数,所以镜面是 x 轴。原图在 x 轴上方的部分会翻到下方,原来在下方的部分会翻到上方。位于 x 轴上的点满足 v=0,翻折后仍在原位,因此零点不会改变。
函数里面有负号:关于 y 轴翻折
g(x)=f(−x).
要让内部输入得到 u,需要 −x=u,所以 x=−u。点映射是
(u,v)⟶(−u,v).
纵坐标不变,横坐标取相反数,镜面就是 y 轴。位于 y 轴上的点不动。
有些函数本来就对称,翻折后看起来完全没变化。比如
f(x)=x2,f(−x)=(−x)2=x
如果你只用这种函数练习,很容易“看起来对了”,其实并没有真正判断。检查翻折时,最好选一条不对称曲线,或者跟踪一个横坐标不为 0 的点。
再多走一步:在一般式 f(b(x−h)) 中,如果 b<0,翻折的中心线不是总在 y 轴。点的横坐标变为
x=h+bu.
以 x=h 为参照,原来的有向距离 u 先除以负数,方向会反过来。因此它可以理解为横向伸缩后,再关于直线 x=h 翻折。
组合变换:把横坐标和纵坐标分开算
回到总形式
g(x)=af(b(x−h))+k.
你不必在脑中同时播放四个动作。拿出原图点 (u,v),横纵坐标分两条线处理:
b(x−h)y
最后合起来:
(u,v)⟶(h+bu,av+k).
例题:三个点怎样搬到新图上
已知 y=f(x) 经过
(−2,1),(0,−1),(3,2),
定义
g(x)=−2f(3(x−1))+4.
求这三个点在新图上的对应点。
与一般式比较,得到 a=−2、b=3、h=1、。
再做一次代数复核。以原图点 (3,2) 为例,新横坐标是 2。代进新函数的内部:
3(2−1)=3,
正好回到原输入 3;输出则是
−2f(3)+4=−2×2+4=0.
所以新点 (2,0) 没有算错。
从新图倒着找原图点
点映射也可以逆着用。若新图上有点 (X,Y),那么
u=b(X−h),v=aY−k(a
例如
g(x)=21f(−2(x−1))+3
经过新图点 (0,5)。对应的原输入是
u=−2(0−1)=2,
原输出是
v=1/25−3=4.
所以原图一定经过 (2,4)。
哪些操作可以换序,哪些不行
一个只改横坐标的操作,和一个只改纵坐标的操作,彼此通常不干扰。比如“右移 2”与“纵向放大 3 倍”,无论先做哪个,最终点坐标都是
(u,v)→(u+2,3v).
但两个都改横坐标,或两个都改纵坐标,就要警惕。
表里不是在玩符号游戏。你可以盯住原点 (0,0):前两种横向顺序会把它分别送到 (1,0) 与 (2,0);后两种纵向顺序会把它分别送到 (0,6) 与 。一个点就足以证明结果不同。
定义域和值域也会跟着坐标走
只画曲线还不够。变换后的定义域、值域,经常就是题目真正想问的东西。
设 f 的定义域为 Df,值域为 Rf,且 b。对
g(x)=af(b(x−h))+k,
新定义域满足
b(x−h)∈Df.
等价地说,原定义域里的每个 u 会变成
x=h+bu.
因此
Dg={h+bu∣u∈D
若 a=0,值域则是
Rg={av+k∣v∈Rf}.
例如
f(x)=x,g(x)=−3
先看定义域:
2(x−4)≥0⟹x≥4.
所以新图从 x=4 开始。再看值域。原函数输出 v≥0,经过 y=−3v+1 后,一定有
y≤1.
端点 (0,0) 根据点映射变成
(4+20,−3×0+1)=(4,1),
正好同时说明定义域的左端点和值域的最高点。
若 b<0,处理区间端点时别忘了不等号方向会在除以负数时翻转。比如
−2(x−1)
要求
−2(x−1)≥0,
所以 x≤1,不是 x≥1。
从图像反推函数式:先找“不会认错的特征”
给出表达式画图,是顺着做;给出图像写式子,是倒着做。倒推时最怕一开始盯着整条曲线凭感觉猜。更好的顺序是先找能稳定追踪的特征。
顶点、端点、渐近线和截距,比“看起来变胖还是变瘦”可靠得多。下面把这些线索逐类拆开。
第一步:认母函数
先看大轮廓:
母函数认错,后面参数即使算得再漂亮也没用。
第二步:用位置特征确定 h 和 k
对
g(x)=a∣x−h∣+k
来说,顶点就是 (h,k)。
对
g(x)=ax−h+k
来说,端点也是 (h,k)。
对
g(x)=x−ha+k
来说,竖直渐近线是 x=h,水平渐近线是 y=k。
这些特征几乎是在图上直接把 h,k 写给你。先拿下它们,式子就只剩倍率 a 需要确定。
第三步:看方向,判断 a 的正负
- V 形向上开口,a>0;向下开口,a<0;
- 抛物线向上开口,a>0;向下开口,a<0;
- 平方根分支从端点向右上走,;向右下走,;
第四步:再取一个点,算出 a
位置和方向只能告诉你大致形状。要得到准确倍率,必须再找一个清楚的点代入。
例 1:由 V 形图像写式子
一条 V 形图像的顶点是 (2,−3),开口向下;从顶点向右走 1 个单位,图像下降 4 个单位。求函数式。
先写顶点式:
g(x)=a∣x−2∣−3.
向右走 1 到达 x=3,此时纵坐标是 −7。代入:
−7=a∣3−2∣−3.
所以
a=−4,
最终得到
g(x)=−4∣x−2∣−3.
例 2:由平方根图像写式子
一条根式曲线的端点是 (−2,1),分支向右上方延伸,并经过 (2,7)。写出函数式。
端点给出
g(x)=ax+2+1.
把 (2,7) 代入:
7=a2+2+1=2a+1.
因此 a=3,函数是
g(x)=3x+2+1
检查端点:代入 x=−2 得 y=1;检查已知点:代入 x=2 得 y=7。两处都对。
例 3:由渐近线和截距写有理函数
一条双曲线的竖直渐近线是 x=2,水平渐近线是 y=−1,并且经过 x 轴上的点 (6,0)。把它看成 的变换。
由两条渐近线先写成
g(x)=x−2a−1.
代入 (6,0):
0=6−2a−1=4a−
所以 a=4,得到
g(x)=x−24−1.
别漏掉定义域:x=2。竖直渐近线不是图像的一部分。
例 4:由抛物线顶点和一点写式子
一条抛物线的顶点是 (−1,2),并经过 (1,10)。设它由 y=x2 变换而来。
先写顶点式:
g(x)=a(x+1)2+2.
代入 (1,10):
10=a(1+1)2+2=4a+2,
所以 a=2。函数式是
g(x)=2(x+1)2+2.
这里还有一个容易忽略的事实:参数未必唯一
如果母函数是幂函数,横向伸缩和纵向伸缩有时会给出同一条曲线。例如 f(x)=x2 时,
f(2x)=(2x)2=4x2=4f(x).
所以只看最终图像 y=4x2,你既可以说它是 y=x2 纵向放大 4 倍,也可以说它是横向压缩到原来的 。两种描述都对。
更一般地,若 f(x)=xn,那么
f(bx)=bnf(x).
因此从图反推时,最好把答案整理到题目指定的形式。若题目要求 af(x−h)+k,就用纵向倍率;若要求 f(b(x−h))+k,再用横向倍率。没有指定时,说明一种正确变换即可,但要承认它可能不是唯一说法。
把二次式整理成“看得见顶点”的形式
图像变换不只帮助你画图,还能把一般二次函数的顶点直接读出来。
设
y=ax2+bx+c,a=0.
先把 a 提出来:
y=a(x2+abx)+c.
括号里配方。因为
x2+abx=(x+
所以
y=a[
现在它已经是顶点式。与
y=a(x−h)2+k
比较,得到
h=−2ab,k=c−4a
于是顶点坐标是
(−2ab,c−4a
例如
y=2x2−12x+15.
配方:
y=2(x
所以它由 y=x2 经过纵向放大 2 倍、右移 3、下移 3 得到,顶点是 (3,−3)。展开复核:
2(x−3)2−3=2x2−12x+18
这个复核很值得做。配方里一旦漏乘外面的 a,顶点纵坐标就会错。
实际模型里,参数分别在说什么
函数变换也可以看成对测量过程的校准。假设 R(t) 是一个传感器记录到的曲线,但它把所有事件都晚记了 2 分钟,而且读数整体偏高 0.6 个单位。
若要把记录曲线向左挪回 2 分钟,并把高度下调 0.6,可以写成
C(t)=R(t+2)−0.6.
为什么是 t+2?假设记录曲线中的峰值出现在输入 u=2。校正后要让这个峰值回到 t=0,就需要 t+2=2。这仍然是“让内部重新得到原输入”的同一套逻辑。
再看一个简化波形:
g(t)=1.8f(4(t−0.5))+0.2.
它可以读成:
- 时间方向压缩到原来的 41;
- 整体向右延后 0.5;
- 振幅放大 1.8 倍;
- 基线抬高 0.2。
若原波形上的点是 (u,v),校正后的点就是
(0.5+4u,1.8v+0.2).
现实题里的单位、延迟、基线和强度,看起来换了说法,背后仍然是横坐标与纵坐标的变化。
一套不容易翻车的检查流程
拿到一个变换式,可以按下面的顺序检查:
-
先认清母函数 f,标出顶点、端点、截距、对称轴或渐近线。
-
把函数整理成 af(b(x−h))+k,尤其不要把 f(2x−6) 中的 直接当平移量。
练习:先自己追点,再展开答案
A. 描述变换
给定 y=f(x) 的图像,描述下列新函数。
- g(x)=f(x)+5
- g(x)=f(x−4)
-
整体上移 5。点映射为 (u,v)→(u,v+5)。
-
整体右移 4。因为 x−4 给出 。
B. 点映射与逆向追踪
已知 f 经过 (−2,1)、(0,−1)、(3,2),且
g(x)=−2f(3(x−1))+4.
- 写出三个对应点。
- 若另一个函数 q(x)=21f(−2(x−1))+3 经过点 ,原图 上对应的点是什么?
- 点映射为
(u,v)→(1+3u,−2v+4).所以三个对应点依次是
C. 由图像信息写函数式
- 一条绝对值图像顶点为 (3,−2),开口向上,并经过 (5,4)。
- 一条平方根曲线端点为 (−1,2),向右下方延伸,并经过 (3,−4)。
- 一条双曲线的渐近线为 和 ,并经过 。
- 设 g(x)=a∣x−3∣−2。代入 (5,4):
4=2a
D. 综合挑战
原函数 f 上的三个点
(−2,4),(0,0),(2,4)
在新函数
g(x)=af(b(x−h))+k
上依次变成
(0,−5),(1,3),(2,−5).
求 a,b,h,k。
先看横坐标。原输入 u=−2,0,2 等距排列,新横坐标 0,1,2 也等距排列,而且间距从 2 变成 1,所以横向压缩到原来的 ,即 。
小结:真正要记的是坐标,不是口令
竖直变化直接改输出:
f(x)+k: (u,v)→(u,v+k),
af(x): (u,v)→(u,av).
水平变化要解内部输入:
f(x−h): (u,v)→(u+h,v),
f(bx): (u,v)→(bu,v).
负号在外面,纵坐标取反,关于 x 轴翻折;负号在里面,横坐标取反,关于 y 轴翻折。
几种变换合在一起时,最稳的一步仍然是
(u,v)→(h+bu,av+k
以后再遇到“括号里为什么反着来”,别急着回忆口诀。拿一个原图点,令内部输入重新等于 u,把新的横坐标解出来。你会发现,方向从来没有反着来;只是输入和点的位置,说的是同一件事的两面。