企评社

函数图像生成器

输入表达式即时出图 · 多条曲线同框 · 不等式阴影区域 · 自动标零点/极值/交点 · 导出 SVG 与 PNG

表达式与图像都只在你浏览器里生成,不上传、不留存
写法要点: 乘号可以省(2x、3sin(x)、(x+1)(x-1) 都算乘法);幂用 ^(x^2);圆周率写 pi 或 π; log 和 lg 都是常用对数(底 10),ln 是自然对数;定义域那一栏写 x<0、-2<=x<2 这类比较式; 不等式写在下面那一栏(y>x^2-2、2x+3y<=12 都行)。
函数(最多 8 条) 预设:
不等式(填了会画出阴影区域)
拖动平移 · 滚轮缩放 · 双击重置

函数图像生成器怎么用

第一栏写函数。一行一条曲线,最多 8 条,颜色自动分配。直接写 x 的表达式就行,不用写「y=」(写了也会自动去掉)。想只看某一条,把别的删掉即可;两条写在一起就能看它们的交点。

第二栏写定义域(选填)。这是画分段函数的关键:第一条写 x^2、定义域写 x<0,第二条写 2x+1、定义域写 x>=0,一张图上的分段函数就出来了。区间端点会自动区分实心点(含端点)和空心圈(不含端点),和课本上的画法一致。

第三栏写不等式。支持 y>x^2-2 这种已经解出 y 的,也支持 2x+3y<=12、x^2+y^2<=4 这种没解出来的;几条不等式同时写就是不等式组,阴影部分就是它们的公共部分(可行域),高中线性规划直接能用。边界线按课本口径区分:带等号画实线,不带等号画虚线。

调窗口有三种办法。直接填 x、y 的范围点「应用窗口」;或者在图上拖动平移、滚轮缩放、双击回到初始;或者点「按曲线适应 y」让页面自己找到看得清的纵向范围。勾选「等比例」(默认已开启)时 x 与 y 的单位长度严格相同,圆看起来才是正圆、直线斜率 1 才是 45°。

导出。PNG 是 2 倍分辨率的位图,直接贴进 Word、微信、作业平台都行;SVG 是矢量文件,放大不糊,可以拖进 AI / Figma / PowerPoint 继续改。两个按钮导出的内容和你在屏幕上看到的完全一致(同一份绘图数据)。

支持的写法、函数与两个容易踩的口径

三角与反三角 sin、cos、tan、cot、sec、csc、asin、acos、atan;双曲 sinh、cosh、tanh;对数指数 ln(自然对数)、lg 与 log(常用对数)、log2、exp;幂与根 ^、sqrt、cbrt,并且 x^(1/3) 在 x 为负时也给出实数结果(多数编程语言会直接返回无意义,课本不认);取整与其他 abs(也可以写 |x|)、sign、floor、ceil、round、trunc、min、max、mod、atan2、logb;常数 pi(或 π)、e、tau。括号可用中英文,×÷−=≤≥、全角数字都认。

口径一:渐近线处一定断线。画 tan(x) 或 1/x 时,很多在线工具会在渐近线位置画出一根从上贯到下的大黑竖线——那根线不是图像的一部分,是采样点被硬连起来造成的。本工具在相邻采样点出现「跳变且中值发散」时判定为极点并断开折线,遇到 floor、sign 这类台阶也拒绝补那根假竖线。所以你的图上看不到它是对的,不是没画出来。

口径二:定义域外什么都不画。sqrt(x)、ln(x)、asin(x) 在实数范围内没有定义的地方,图上就是空白,不会贴着一根假线走。高频振荡的函数(比如 sin(1000x))在任何工具上都会失真,把 x 范围调到 10 个周期以内、或把采样调到「细 3200」再看的结论才可靠。

关于数据。表达式、图像、关键点全部在你本机浏览器里算出来:页面不发起任何网络请求,不写 localStorage、cookie 或网址参数,刷新即清空。表达式解析是页面里自带的递归下降解析器,不使用 eval,输入的内容不可能被执行成脚本。

常见问题

可以画哪些函数?需要写「y=」吗?

不需要,直接写 x 的表达式(写了 y= 或 f(x)= 也会自动去掉)。支持多项式、分式、三角与反三角、双曲、指数与对数(ln / lg / log / log2)、幂与根号、绝对值(abs 或 |x|)、取整类(floor / ceil / round / sign)、min / max / mod 等,常数有 pi(或 π)、e、tau,乘号可以省略(2x、3sin(x) 都按乘法算)。一次最多 8 条曲线同框。

为什么 tan(x)、1/x 的图上没有那根竖线?

因为那根本来就不是函数图像的一部分。渐近线两侧的值一个是正无穷、一个是负无穷,如果把它们硬连起来,就会出现一根从上贯穿到下的假竖线。本工具在检测到跳变并且中值发散时会主动断开折线,台阶函数(floor、sign)也一样不补竖线。图上没有它才是正确的结果。

分段函数怎么画?

一行一段:第一行表达式写 x^2、定义域写 x<0;第二行表达式写 2x+1、定义域写 x>=0。定义域支持链式写法(-2<=x<2)和 and 连接(x>=0 and x<5)。区间端点会自动画成实心点(含端点)或空心圈(不含端点),与课本画法一致。

怎么画不等式的阴影区域?实线和虚线是什么意思?

写在不等式那一栏即可,y>x^2-2 这类已解出 y 的和 2x+3y<=12、x^2+y^2<=4 这类没解出的都支持;同时写几条就是不等式组,阴影是它们的公共部分,可以直接用来做高中线性规划的可行域。边界线按课本口径:含等号(<=、>=)画实线,不含等号(<、>)画虚线。

零点、极值、交点是怎么算出来的?准不准?

纯数值算法:在视口的 x 范围内按当前采样数取点,在已经断好线的折线段上寻找符号变化,再用二分法收敛到双精度极限;极值先找三点方向变化、再做一维搜索抛光;交点对两条曲线之差做同样的处理。所以数字精度接近机器精度,但它只算你当前窗口里看到的范围——把窗口放大到某个点附近,读数会更稳。像 x²=0 这种「相切」的零点没有符号变化,程序会以极值点的形式标出,位置同样是 x=0。

能画圆、椭圆这些隐函数吗?

曲线模式要求能写成 y 是 x 的表达式,所以整圆 x²+y²=4 不能当一条曲线画(一个 x 对应两个 y)。有两种等效画法:① 在不等式栏写 x^2+y^2<=4,会画出圆盘区域,边界就是要的圆;② 拆成两条曲线 sqrt(4-x^2) 和 -sqrt(4-x^2),并勾选「等比例」(默认已勾)。参数方程与极坐标暂未提供。

导出 SVG 和 PNG 有什么区别?

PNG 是 2 倍分辨率的位图,兼容性好,贴进 Word、微信、作业平台都可以;SVG 是矢量文件,任意放大都锐利,并且能拖进 Illustrator、Figma、Inkscape 里继续编辑颜色和线宽。两者都来自屏幕上同一份绘图数据,不会出现「看到的」和「导出的」不一样。

会上传我输入的表达式吗?

不会。表达式、图像、关键点全部在你的浏览器里计算,页面不发起任何网络请求,不写 localStorage、cookie 或网址参数,刷新即清空。解析器是页面自带的递归下降实现,不使用 eval,输入内容不可能被执行成脚本。

相关工具